我可以使用重写和nginx的一点帮助…基本上我的应用程序的结构看起来像这样
Headdirectory -- -APPBase -SomeMoreStuff -WWWDirectory .htaccess
所以当我打开HeadDirectory时,我需要redirect到WWWDirectory。 在Apache中,它使用htaccess和以下内容完成:
RewriteEngine On RewriteRule ^(.*) www/$1
我已经在Nginx上试过了:
location /Headdirectory { rewrite ^/(.*) /www/$1; }
而我试图创build一个别名,但没有工作…
如果有人能帮助我,那会很好。
祝你今天愉快
这里是如何在Nginx中完成的…
服务器{
server_name domain.com;
根/path/to/domain.com;
index index.php; #或index.html或适合应用程序的东西
location〜/ Headdirectory / WWWDirectory / {
#用WWWDirectory做一些东西
#类似try_files $ uri = 404;
}
位置〜/ Headdirectory / {
重写^ / Headdirectory /(.*)$ / Headdirectory / WWWDirectory / $ 1永久;
}
#其他块和指令
位置 / {
#用root做东西
#例如try_files $ uri = 404;
}
}
有问题吗?
这是一个有点令人困惑的问题…
你的configuration是,如果有人会尝试http://some.host/Headdirectory ,它将被重写到http://some.host/www/Headdirectory ,这是不是你想要的,我假装…
尝试这个:
root /full/path/to/the/Headdirectory location / { rewrite ^/(.*) /www/$1; }
编辑:
对不起,你需要这个configuration块:
location /www { }
它将停止重写…