Apache到Ngnix重写目录混淆

我可以使用重写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 { } 

它将停止重写…