nginx+php5-fpm .php 页面未反映更改

nginx+php5-fpm .php 页面未反映更改

我对 非常熟悉Apache,但我想切换到Nginx以尝试获得使用一款非常流行的软件的经验。不幸的是,我还没有取得很大进展,这个问题让我抓狂。

贴个测试页面之后(只是简单的):echo“This is Nginx”;

我解压了我的.tar.gz文件并将所有 Web 文件加载到目录中 - 顺便说一句,我也检查了权限。不幸的是,我所能看到的一切仍然是“这是 Nginx”

到目前为止我已经:

  • 已重启Nginx
  • 重新启动php5-fpm(是的,我知道针对不同的系统有几种方法,我都尝试过了)
  • 确保文件权限正确
  • 检查了我的配置文件和服务器块(见下文),
  • 关闭了 sendfile 选项nginx.conf

我的服务器块如下所示:

server {
    listen   80;
    server_name xxx;
    access_log  /var/log/nginx/localhost.access.log;

## Default location
location / {
    root   /srv/www;
    index  index.php;
}

## Images and static content is treated different
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
  access_log        off;
  expires           30d;
  root /srv/www;
}

## Parse all .php file in the /var/www directory
location ~ [^/]\.php(/|$) {
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    if (!-f $document_root$fastcgi_script_name) {
            return 404;
    }
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
}

## Disable viewing .htaccess & .htpassword
location ~ /\.ht {
    deny  all;
}
}

我的nginx.conf文件与默认文件相同,只是上面指出的 SendFile 更改除外。如果有人能提供帮助,我将不胜感激。

答案1

root您忘记在块内声明server。您只在某些块中重复了它location。这是其中之一最常见的 nginx 配置错误. 将它们移出到server街区。

相关内容