【问题标题】:Confusion about Nginx folder paths关于 Nginx 文件夹路径的困惑
【发布时间】:2019-08-05 20:23:14
【问题描述】:

我在这里写这篇文章是因为在线上这个问题似乎没有一致性,而且我还认为有一些我不知道的标准做法,所以如果有人能启发我,那就太好了。

我正在尝试在 MacOS 上进行基本的 nginx 配置。

我的 nginx 目录(包含我的 nginx.conf)位于:

/usr/local/etc/nginx

同时我要提供的 index.html 文件位于:

/usr/local/var/www/index.html

这些是 homebrew 在安装 Nginx 时给我的目录路径。

我的 nginx 配置文件如下所示:

  3 events { 
  4     worker_connections  1024; 
  5 } 
  6  
  7 http { 
  8   server { 
  9      
 10     index  index.html index.htm; 
 11  
 12     location / { 
 13       root /var/www; 
 14     } 
 15   } 
 16 } 

这是我在教程(包括官方 nginx 教程)上看到的,但我对为什么根目录中的 /var/www 不是我机器根目录的相对路径感到困惑。我尝试过使用相对路径、此路径和其他变体,并且不断得到 404。如果有人可以 a) 解释路径问题 b) 告诉我哪里出错了,我将不胜感激。每次更改 conf 时,我都会使用 sudo nginx -s reload 重新加载 nginx。

【问题讨论】:

  • nginx -V 带给你什么?

标签: nginx path


【解决方案1】:

你的项目在 /usr/local/var/www/index.html,你应该将 nginx 根参数设置为:

root /usr/local/var/www/

root 参数是项目文件夹的绝对路径。 您还应该指定要公开的端口,通常是端口 80。

服务器块可能是这样的:

server {
    listen 80 ;

    server_name     mysite.com ;
    index  index.html index.htm; 

    location / {
        root /usr/local/var/www ;
        # other opts here
    }
}

【讨论】:

    猜你喜欢
    • 2012-03-06
    • 1970-01-01
    • 2019-10-18
    • 1970-01-01
    • 1970-01-01
    • 2019-05-17
    • 2020-03-06
    • 2016-03-16
    • 2013-07-27
    相关资源
    最近更新 更多