我想有两种不同的重定向;如果用户访问我的apache-server上的index.php文件,并在用户输入特定URL后进行一次重定向,则进行一次重定向。
所以我的index.php文件位于我的apache上的“/ client / frontend / questionnaire”文件夹中。如果用户输入“www.test-domain.com”,则应将其重定向到服务器上的index.php文件。
如果用户输入“www.test-domain.com/news”,则应处理第二次重定向。然后他或她应该被重定向到“www.test-domain.com/client/frontend/app/index.php/article-one”。
我设法创建了第一个重写规则:
Options -Indexes
RewriteEngine On
RewriteBase /
RewriteRule ^$ client/frontend/questionnaire/index.php [L]
但我不知道如何创建第二条规则。
非常感谢任何帮助。
谢谢!
答案 0 :(得分:2)
您必须使用多个RewriteCond
+ RewriteRule
。请参阅mod_rewrite
introduction,然后查看reference documentation(全部解释)。
只有RewriteRule
实际重写当前请求。要执行此操作,之前的所有RewriteCond
必须为true
。
文档中的样本:
RewriteCond %{REMOTE_ADDR} ^10\.2\.
RewriteRule (.*) http://intranet.example.com$1
RewriteCond %{REMOTE_HOST} ^host1 [OR]
RewriteCond %{REMOTE_HOST} ^host2 [OR]
RewriteCond %{REMOTE_HOST} ^host3
RewriteRule ...some special stuff for any of these hosts...
RewriteCond %{HTTP_USER_AGENT} (iPhone|Blackberry|Android)
RewriteRule ^/$ /homepage.mobile.html [L]