Apache的RewriteRule模式的URL前缀

时间:2015-03-11 18:22:25

标签: php apache .htaccess mod-rewrite

我想知道是否有任何Apache指令自动为所有RewriteRule模式(也可能还有RewriteCond模式)添加给定前缀,类似于RewriteBase用于替换相对URL。

把它放到上下文中 - 我想在url子文件夹下运行我的php应用程序,比如我们http://example.com/my-app/。在我设置的Apache虚拟主机中

Alias /myapp "<path-to-my-app-source-dir>"

因为我想在http://example.com下运行其他应用。在my-app源文件夹下的.htaccess中,我添加了RewriteBase /my-app,因此我不必明确将my-app放入RewriteRule替换中。我还没有找到任何类似的指令来指定模式的前缀,因此以下规则

RewriteRule ^my-app/foo/(.+)$ foo.php?x=$1
RewriteRule ^my-app/.*$ index.php [L]

可以指定为

RewriteRule ^foo/(.+)$ foo.php?x=$1
RewriteRule ^.*$ index.php [L]

有吗?或者这个设置总体上有更好的解决方案吗?

谢谢!

0 个答案:

没有答案