我想在我的机器上有两台服务器,一台是私有的,只能在127.0.0.1上本地访问,另一台在LAN上可见(它的根文件夹是私有服务器的子文件夹)。所以我在站点中制作了两个配置文件,并将它们链接到启用站点的文件夹。档案accessible
:
server {
listen 80;
root /usr/share/nginx/html/accessible/;
index index.php index.html index.htm;
server_name accessible;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html/accessible/;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
和档案localhost
:
server {
listen 127.0.0.1:80;
listen [::1]:80;
root /usr/share/nginx/html;
index index.php index.html index.htm;
server_name localhost;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
之后我更新了/ etc / hosts,以便将http://accessible/转发到127.0.0.1:127.0.0.1 accessible
就行了。
现在当我尝试连接到http://localhost/时,一切正常,我按预期得到/usr/share/nginx/html/index.html
。但是当我尝试连接到http://accessible/时,会显示相同的文件/usr/share/nginx/html/index.html
。怎么可能?根文件夹显然已设置。
答案 0 :(得分:0)
问题是本地主机服务器在我配置的相同IP上运行,可访问被重定向到显然不可能(或者至少我不知道如何)。
我重定向可访问127.0.0.2(在/ etc / hosts中更改为127.0.0.2 accessible
)这是本地计算机服务的另一个地址,并且在允许所有LAN IP地址的nginx配置文件accessible
中稍作更改后(allow 192.168.1.0/32;
)一切正常(对我本地机器和网络上的计算机而言)。