我正在尝试使用Nginx在同一个端口中运行域和子域,但还没有成功。
我有一个名为www.just4bettors.mobi
的域名,用于移动页面,子域名必须名为www.desktop.just4bettors.mobi
,这显然适用于桌面网站。
如果您输入www.just4bettors.mobi
一切正常,则会到达该页面,但如果您输入www.desktop.just4bettors.mobi
,则会获得This web page is not available
。这是我到目前为止的服务器块
server {
large_client_header_buffers 1 1K;
listen 80;
server_name ~^(?<subdomain>[^.]*)\.?just4bettors.mobi$ just4bettors.mobi;
root /home/c0pt/capilleira/capilleiraclickandgamblemobile/www;
location / {
if ($subdomain) {
root /home/c0pt/capilleira/capilleiraclickandgambleweb/dist;
}
if ($host = "just4bettors.mobi") {
root /home/c0pt/capilleira/capilleiraclickandgamblemobile/www;
}
index index.html index.htm;
...
}
}
尝试访问desktop.just4bettors.mobi
后,控制台会返回此GET http://desktop.just4bettors.mobi/ net::ERR_NAME_NOT_RESOLVED
你知道这里的根源不同,移动和网络生活在不同的地方。
所以,我在这里错过了什么?
答案 0 :(得分:4)
我管理过Nginx配置,其中使用了数百万个不同的域。尝试在一个server{}
块指令中工作非常复杂。这就是我要做的事情:
server {
large_client_header_buffers 1 1K;
listen 80;
server_name www.just4bettors.mobi;
root /home/c0pt/capilleira/capilleiraclickandgamblemobile/www;
location / {
...
}
}
server {
large_client_header_buffers 1 1K;
listen 80;
server_name www.desktop.just4bettors.mob;
root /home/c0pt/capilleira/capilleiraclickandgambleweb/dist;
location / {
...
}
}
您可以在此处详细了解:http://wiki.nginx.org/Pitfalls#Server_Name