显示 Nginx 页面而不是主页(Digital Ocean - LEMP)

Nginx page displaying instead of home page (Digital Ocean - LEMP)

我最近购买了一个 DigitalOcean 帐户,并正在尝试设置我的网站。但是,每当我输入我网站的 IP 地址时,我都会看到这个页面:


欢迎使用 nginx!

如果您看到此页面,则 nginx 网络服务器已成功安装并正常运行。需要进一步配置。

有关联机文档和支持,请参阅 nginx.org。 nginx.com.

提供商业支持

感谢您使用nginx


我搜索了答案,但没有找到适合我的答案。我是运行 Ubuntu LEMP 14.04,用的是一键安装。我打算将我的 pages/files 放入我已声明为根目录的 "usr/share/nginx/html" 文件夹中。

这里是 "etc/nginx/available-sites/default.conf" 文件,希望能容纳这个:

server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /usr/share/nginx/html;
    index index.php index.html index.htm;

    # Make site accessible from http://localhost/
    server_name localhost unaviamedia.ca;

    location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
        # Uncomment to enable naxsi on this location
        # include /etc/nginx/naxsi.rules
    }

    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;
    }

    .........

}

但是,当我通过 IP 访问我的网站时,我仍然只看到 Nginx 欢迎页面,这很烦人。如何显示主页?


编辑:更新代码以匹配我最近的尝试。另外,对于那些想知道的人,我已经重启了几次nginx。


如果我需要添加任何其他内容,请告诉我。谢谢!

简化

创建一个"Hello world" index.html并将其复制到项目的根目录*。

分而治之

我对你的建议是将你的 nginx.conf 简化为一种非常简单的形式,如下所示。

server {
  listen 80 default;
  server_name yourdomainname.com;
  root /home/your_app_name/public;

  try_files $uri/index.html $uri ;

  error_page 500 502 503 504 /500.html;
  client_max_body_size 4G;
  keepalive_timeout 10;
}

组织

*我建议您不要将 index.html 放在 nginx 目录中。使用项目特定的内容作为根目录,如上例所示。将您的 Hello World 索引页放在那里。

重启

现在重新加载 NGINX,看看它是否正在加载您的简单 "Hello World" index.html。如果是这样,开始增加复杂性,一次一个组件。

文件权限

基于 unix 的第一个陷阱 OS 是文件权限。查看您的 NGINX 错误日志以查看您是否被文件和目录上的 user/group 块 ping 很重要。如果 NGINX 没有读取权限index.html,game over.


Digital Ocean 将他们的工具称为 "one-click installs",这是一种误导。我有几个 DO VPS 设置,所以我知道他们的安装绝不是完全安装,正如您所期望的那样。返回一次安装一个组件并确认每个组件都在工作是最好的方法。

只需将 https:// 添加到您的 IP 地址,而不仅仅是输入您的 IP 地址。 例如:https://198.168.5.158 这对我有用。