Nginx设置服务器给出安装页面

我正在尝试第一次设置Nginx,并且在接下来的教程中,我已经谈到了获得Nginx的欢迎页面。 我删除了/etc/nginx/nginx.conf文件中的最后两个include,并添加了下面的代码。 不过,无论我尝试多less次移动,我只能得到欢迎页面,而不是我的htdocs目录中的页面。

我相信我错过了简单的东西,但任何指针将不胜感激。

server { listen 80; server_name domain.com; root /var/www/domain.com/htdocs; location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php5-fpm.sock; index index.html index.php; } } 

从你的评论看,你听起来像是运行两个nginx的副本。 以下是您可以如何解决问题的方法:

 service nginx stop ps auxwww|grep nginx # is it still running? 

一旦你成功地停止nginx,尝试使用curl而不是使用Chrome或Safari本地检查。 这将绕过任何caching/代理,并给你一个更好的底层深入了解正在发生的事情。 假设你的服务器的公共IP是1.2.3.4。 然后在运行nginx的同一台服务器上,你可以这样做,并检查输出:

 curl -XGET http://1.2.3.4:80 curl -XGET http://1.2.3.4:80/test.html 

现在你有一些数据,你可以做一些扣除。

案例A

即使您停止了服务并手动杀死了任何徘徊的进程,您仍然可以获得nginx的欢迎页面。 您可能在错误的服务器上工作,或者IP没有按照您期望的方式布线。 也许它连接到像CloudFlare这样的CDN,即使在服务器closures的情况下也可以显示上次检索到的页面。

尝试通过本地主机访问页面来确认:

 curl -XGET http://127.0.0.1:80 

案例B

你必须手工杀死nginx,但一旦你做了服务器停止响应。 在这种情况下,nginx的服务定义有些问题,或者是以不同的方式启动它(supervisord,manual rc.local thing)。 也可以使用错误的设置文件。

弄清楚nginx是什么开始,然后去掉它,然后用你的包pipe理器用正常的启动脚本重新安装nginx。

案例C

停止服务确实奏效,在你做完之后,curl没有得到回应。 在这种情况下,使用Chrome / Safari进行testing可能会受到某些caching或本地代理的影响。

再次启动服务,然后使用curl进行testing,直到获得configuration文件为止。