使用Nginx Web服务器时找不到404

时间:2016-06-22 18:04:30

标签: apache ubuntu nginx path http-status-code-404

在浏览器上运行我的IP ADDRESS时,我在屏幕底部找到了404 Not Found with nginx / 1.8.0。我知道这是一个经常被问到的问题,因为我在这个问题上已经看过多个帖子,而且我花了过去4-5个小时来查看这些帖子,但由于某种原因仍然无法解决这个问题。所以我现在知道必须编辑nginx.conf文件才能反映HTML文件的正确路径。这就是我的nginx.conf文件默认情况下的样子:

worker_processes  2;

pid        logs/nginx.pid;
error_log syslog:server=unix:/dev/log,facility=local7,tag=nginx,severity=error;

events {
worker_connections  1024;
}


http {
include       mime.types;
default_type  application/octet-stream;

access_log syslog:server=unix:/dev/log,facility=local7,tag=nginx,severity=info combined;

sendfile        on;
keepalive_timeout  65;


server {
    listen       80;
    server_name  localhost;

    location / {
     root   html;

    index  index.html index.htm;
        autoindex on;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}
}

因此,在查看.conf文件后,我意识到root /path/可能导致问题。所以我做的是我去了目录中的index.html文件并在其上运行pwd并用这个pwd值替换了路径。然后我再次构建/生成nginx,我也重新启动了nginx。但是,这仍然导致404 Not Found错误,所以我不确定我是否误解了root的含义或者是否存在其他问题。我也知道从Apache切换到Nginx可能会出现一些问题,如果处理不当可能会导致404 Not Found错误但我无法获得太多信息以及如何检查这是否真的适用我的情况与否。有人能指出我如何解决这个问题的正确方向吗?我一直在通过采购(不是通过调用sudo apt-get install)在Ubuntu上编译Nginx,因为这是我的指示。我知道Nginx正在运行,因为当我告诉它停止时有一个“无法连接:Firefox无法建立与服务器的连接......”,我只是坚持这个奇怪的问题。

如果提供的信息不充分,请告诉我,如果有,我应该添加哪些信息以使帖子更加清晰!谢谢!

1 个答案:

答案 0 :(得分:1)

确保您的nginx.conf文件看起来如下所示:

worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /home/user_name/Documents/your_proj; # You need to provide here the path of your "index.html" file
            index  index.html index.htm;
        }
}

您的目录index.html下必须有index.htm/home/user_name/Documents/your_proj文件,如上面的配置所示。