我想知道是否有任何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]
有吗?或者这个设置总体上有更好的解决方案吗?
谢谢!