正确配置nginx到localhost?

Kat*_*tai 36 configuration localhost nginx

我刚刚在一小时前安装了nginx和php fastcgi,在阅读了快速启动配置和nginx文档等示例后,我无法让它工作.

无论我改变或尝试什么,我总是只得到"欢迎来到Nginx!" 屏幕上的"localhost/..." - 我甚至无法调用简单的index.html

我的配置:

(评论中的内容是我试过的)

// default nginx stuff (unchanged)

server {
    #listen 80 default_server;
    #listen 80 default;
    listen 80;

    #server_name localhost;
    #server_name _;

    #access_log /var/log/nginx/board.access_log;
    #error_log /var/log/nginx/board.error_log;

    #root /var/www/board;
    #root /var/www/board/public/;
    root /var/www/board/public;

    #index index.html;
    index index.html index.htm index.php;
}
Run Code Online (Sandbox Code Playgroud)

如果我理解正确,这应该是最简单的设置,对吧?只是定义listen 80;, index index.html;但我不能让它工作

文件/var/www/board/public/index.html存在且包含内容

在我浪费2个小时尝试某些东西之前,你们中的某个人可以快速观察并告诉我我做错了什么吗?谢谢.

Sam*_*lar 45

从根本上说,你没有声明nginx用来绑定URL和资源的位置.

 server {
            listen       80;
            server_name  localhost;

            access_log  logs/localhost.access.log  main;

            location / {
                root /var/www/board/public;
                index index.html index.htm index.php;
            }
       }
Run Code Online (Sandbox Code Playgroud)

  • 是的它现在有效.我发现了问题 - 本地主机被`include/etc/nginx/sites-enabled/*`自动覆盖 - 已经配置了一个带有localhost的`server {}`.这杀了我自己的配置.非常感谢,以前找不到它! (8认同)
  • @Katai`这很有效.将root置于一个位置块内将起作用,它完全有效.什么是错误的,当你开始添加位置块.基本上把root放在外面保证任何/每个位置都有一个根,所以空位置将有一个资源要发送,但那就是你有很多很多位置...... (2认同)
  • 当我们在 localhost 上工作时,我们可以将服务器名称 (localhost) 更改为任何其他名称吗? (2认同)