我怎样才能完成这种类型的mod_rewrite?

时间:2011-03-04 18:03:34

标签: apache mod-rewrite shared-hosting project-setup

我想在一台共享服务器上设置暂存和生产环境。所以,最佳的,我希望能够在服务器上创建如下结构:

/stage/
   /lib/
   /web/
      /js/
      /css/
      index.php
      ...
/production/
   /lib/
   /web/
      /js/
      /css/
      index.php
      ...

但是,虽然我可以更改添加的子域或插件域的文档根目录,但我无法更改主域的文档根目录。所以,我坚持使用文件根目录/ public_html /.

我希望可以通过stage.domain.com(指向/ stage / web /)访问暂存环境,并且每个其他子域* .domain.com或domain.com都可以路由到生产环境(指向到/ production / web /).

考虑到这一点,我相信我需要一个强大的mod_rewrite脚本来完成这项工作(.htaccess级别)。既然,我是mod_rewrite的新手,有人知道如何编写一个透明地正确路由请求的脚本吗?

有没有更好的方法在共享服务器上处理这两种环境?

1 个答案:

答案 0 :(得分:0)

如果无法更改主域的文档根目录。您可以在public_html名称production文件夹中创建一个符号链接到/web/production。启用符号链接。

RewriteCond {REQUEST_FILENAME} !-f
RewrireRule ^(.*)$ production/$1 [QSA,L]