nginx提供一些(但不是全部)的php文件作为下载

我正在运行nginxUbuntu服务器上安装Wordpress。 安装过程非常顺利(下面安装LEMP和安装Wordpress教程 – 带我通过mysql,php5-fpm和wordpress安装程序),似乎主要工作。 我可以查看WordPress的pipe理页面,创build博客post,甚至查看这些post。 但是当我尝试访问我的博客的主页(例如index.php)时,nginx将该文件作为下载而不是执行它。 我已经尝试过Nginx的configuration服务.php文件作为下载,而不是执行它们无济于事。

这是我的虚拟服务器文件:

server { listen 80; server_name my.domain.com; root /my/wordpress/home/dir; index index.php index.html index.htm; location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location / { try_files $uri $uri/ /index.php?$args; rewrite ^/([_0-9a-zA-Z-]+/)?wp-admin$ /$1wp-admin/ redirect; if (-e $request_filename) { rewrite ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) /$2 break; } rewrite ^/([_0-9a-zA-Z-]+/)?(.*\.php)$ /$2 break; rewrite ^(.*)$ /index.php break; } } 

和nginx.conf:

 user www-data; worker_processes 4; pid /run/nginx.pid; events { worker_connections 768; } http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; gzip on; gzip_disable "msie6"; include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; } 

为了清晰起见,我删除了注释行。 sudo nginx -t报告没有错误。

我怎样才能得到index.php执行,而不是作为一个下载服务? 谢谢你的帮助。

编辑:看起来像是一个浏览器caching问题。 我试图删除过去24小时内的caching数据,但没有任何改变。 删除所有内容后,它现在正确加载,而不是下载。 它也加载在其他浏览器/电脑上就好了。

在Nginx后面运行Wordpress,这对我有用:

  location / { # try_files $uri $uri/ =404; try_files $uri $uri/ /index.php?q=$uri&$args; } location /wp-content/updraft { deny all; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } 

我也建议阅读Wordpress-Nginx项目中的示例文件。 特别是,你也可能对globals / restrictions.conf文件感兴趣,这会加强你的安装。 如果你在同一台服务器上有几个WordPress站点,他们都可以共享这些“全局”配置文件,让你的生活更容易。