<div dir="ltr"><div>Hello. I am new here.</div><div><br></div><div>I try to enable PHP and CGI(Perl) on UserDir (/home/user/public_html) with nginx.</div><div>But on my Chrome, PHP script is downloaded and CGI script shows me "404 Not Found" page.</div><div>Here's my configurations. What is wrong with my configurations?</div><div><br></div><div>OS: Linux 3.10.0 / CentOS 7 64bit</div><div>nginx version: 1.8.0</div><div><br></div><div>----------------------------------------------</div><div>/etc/nginx/conf.d/default.conf:</div><div>server {</div><div>    listen       80;</div><div>    server_name  localhost;</div><div>    access_log  /var/log/nginx/access.log;</div><div>    error_log   /var/log/nginx/error.log;</div><div><br></div><div>    #charset koi8-r;</div><div>    #access_log  /var/log/nginx/log/host.access.log  main;</div><div><br></div><div>    location / {</div><div>        root   /var/www/html;</div><div>        index  index.html index.htm;</div><div>    }</div><div><br></div><div>    location ~ ^/~(.+?)(/.*)?$ {</div><div>        alias /home/$1/public_html$2;</div><div>        index  index.html index.htm;</div><div>        autoindex on;</div><div>    }</div><div><br></div><div>    #error_page  404              /404.html;</div><div><br></div><div>    # redirect server error pages to the static page /50x.html</div><div>    #</div><div>    error_page   500 502 503 504  /50x.html;</div><div>    location = /50x.html {</div><div>        root   /var/www/html;</div><div>    }</div><div><br></div><div>    # proxy the PHP scripts to Apache listening on <a href="http://127.0.0.1:80">127.0.0.1:80</a></div><div>    #</div><div>    #location ~ \.php$ {</div><div>    #    proxy_pass   <a href="http://127.0.0.1">http://127.0.0.1</a>;</div><div>    #}</div><div><br></div><div>    # pass the PHP scripts to FastCGI server listening on <a href="http://127.0.0.1:9000">127.0.0.1:9000</a></div><div>    #</div><div>    #location ~ \.php$ {</div><div>    #    root           html;</div><div>    #    fastcgi_pass   <a href="http://127.0.0.1:9000">127.0.0.1:9000</a>;</div><div>    #    fastcgi_index  index.php;</div><div>    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;</div><div>    #    include        fastcgi_params;</div><div>    #}</div><div><br></div><div>    location ~ (^~)*\.php$ {</div><div>        root           /var/www/html;</div><div>        fastcgi_pass   <a href="http://127.0.0.1:9000">127.0.0.1:9000</a>;</div><div>        fastcgi_index  index.php;</div><div>        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;</div><div>        include        /etc/nginx/fastcgi_params;</div><div>    }</div><div>    location ~ (^~)*\.pl|cgi$ {</div><div>        root           /var/www/html;</div><div>        fastcgi_pass   <a href="http://127.0.0.1:8999">127.0.0.1:8999</a>;</div><div>        fastcgi_index  index.cgi;</div><div>        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;</div><div>        include        /etc/nginx/fastcgi_params;</div><div>    }</div><div><br></div><div>    location ~ .*~.*\.php$ {</div><div>        alias /home/$1/public_html$2;</div><div>        fastcgi_pass   <a href="http://127.0.0.1:9000">127.0.0.1:9000</a>;</div><div>        fastcgi_index  index.php;</div><div>        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;</div><div>        include        /etc/nginx/fastcgi_params;</div><div>    }</div><div>    location ~ .*~.*\.pl|cgi$ {</div><div>        alias /home/$1/public_html$2;</div><div>        fastcgi_pass   <a href="http://127.0.0.1:8999">127.0.0.1:8999</a>;</div><div>        fastcgi_index  index.cgi;</div><div>        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;</div><div>        include        /etc/nginx/fastcgi_params;</div><div>    }</div><div><br></div><div>    # deny access to .htaccess files, if Apache's document root</div><div>    # concurs with nginx's one</div><div>    #</div><div>    #location ~ /\.ht {</div><div>    #    deny  all;</div><div>    #}</div><div>}</div><div><br></div><div>----------------------------------------------</div><div>/etc/nginx/nginx.conf:</div><div><br></div><div>user  nginx;</div><div>worker_processes  1;</div><div><br></div><div>error_log  /var/log/nginx/error.log warn;</div><div>pid        /var/run/nginx.pid;</div><div><br></div><div><br></div><div>events {</div><div>    worker_connections  1024;</div><div>}</div><div><br></div><div><br></div><div>http {</div><div>    include       /etc/nginx/mime.types;</div><div>    default_type  application/octet-stream;</div><div><br></div><div>    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '</div><div>                      '$status $body_bytes_sent "$http_referer" '</div><div>                      '"$http_user_agent" "$http_x_forwarded_for"';</div><div><br></div><div>    access_log  /var/log/nginx/access.log;</div><div>    error_log   /var/log/nginx/error.log;</div><div><br></div><div>    sendfile        on;</div><div>    #tcp_nopush     on;</div><div><br></div><div>    keepalive_timeout  65;</div><div><br></div><div>    #gzip  on;</div><div><br></div><div>    include /etc/nginx/conf.d/*.conf;</div><div>}</div><div><br></div></div>