我有以下服务器块:
server {
server_name *.somedomain.com
root /var/www/html/$rootpath/web;
# etc...
}
它缓存根目录中的所有文件夹,并将其映射到folder_name.subdomain.com
网站。
现在,我必须在symfony 2中创建两个文件夹,这两个文件夹都应该是stagings——一个用于开发,另一个类似于生产(但使用开发数据库)。
所以我必须在里面创建两个位置块,每个位置块捕获不同的域,这样一个域重定向到app.php,第二个重定向到app_dev.php,等等。
我该怎么做?位置块应该是什么样子才能捕获子域?它应该看起来像:
server {
server_name *.somedomain.com;
root /var/www/html/$rootpath/web;
location /development-staging/ {
index app_dev.php
}
location /production-staging/ {
index app.php
}
}
但它缓存*.somedomain.com/development-staging/
链接而不是development-staging.somedomain.com/
。。。
我该如何解决这个问题?谢谢
我同意,对于不同的子域,最好创建一个单独的服务器块。如果出于任何原因,你想在一个服务器块中定义不同子域的特定行为,就像一样
server {
server_name *.somedomain.com;
root /var/www/html/$rootpath/web;
location / {
if ( $host = "development-staging.somedomain.com" ) {
index app_dev.php;
}
if ( $host = "production-staging.somedomain.com" ) {
index app.php;
}
}
}