Nginx没有select网站启用网站?
经过10多个小时的研究,我还没有想出为什么这不起作用! 我试图将我的本地主机移动到/ etc / nginx / sites-enabled / default中启用了站点的文件夹中。
它是来自站点可用文件夹的符号链接。 当使用以下configuration时,我得到一个“无法连接”使用本地主机:8080作为我的地址
nginx.conf(/usr/local/nginx/conf/nginx.conf):
user www-data; worker_processes 2; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; include /etc/nginx/sites-enabled/*; }
站点可用(/ etc / nginx / sites-available / default):
server { listen 8080; root /home/myusername/myown/customdirectory; index index.php index.html index.htm; server_name localhost; location / { try_files $uri $uri/ /index.html; } location /doc/ { alias /usr/share/doc/; autoindex on; allow 127.0.0.1; allow ::1; deny all; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/www; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } location ~ /\.ht { deny all; } }
我可以得到这个工作,如果我把网站的相关信息提供给nginx.conf,我只是不明白为什么它不能这样工作?
谢谢!
我有同样的问题。 这是因为我不小心使用了符号链接的相对path。
你确定你使用完整的path,例如:
ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/example.com.conf
在sites-enabled/default
包含sites-available/default
sites-enabled/default
。 它只需要一条线。
在sites-enabled/default
(新的configuration版本?):
包含path似乎与包含它的文件有关
include sites-available/default;
请参阅include
文档 。
我相信某些版本的nginx允许包含/链接到其他文件,纯粹是通过一个单行与包含文件的相对path。 (至less这就是我一直使用的一些“inheritance”configuration文件的样子,直到一个新的nginx版本破坏它们。)
在sites-enabled/default
(旧configuration版本?)中:
包含path似乎是相对于当前文件
../sites-available/default
从:
include /etc/nginx/sites-enabled/*;
至
include /etc/nginx/sites-enabled/*.*;
解决了我的问题