我有点坚持我的重定向规则。比长篇演讲更好的小例子,这里是大丑:
IndexIgnore *
ErrorDocument 404 http://www.example.com
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^([^\.]+)\.example\.com$ http://example.com/private/$1/public/si.php [L]
我的目标是获取子域([^\.]+)
并在重定向中使用它而不是$1
. 例如,test.example.com
应该重定向到http://example.com/private/test/public/si.php
感谢您的任何帮助。
问候,S。
最终工作的htaccess:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{REQUEST_URI} !^/private/
RewriteCond %{HTTP_HOST} ([^\.]+).example.com [NC]
RewriteRule ^ /private/%1/public/$1 [R=301,L]
重定向anysub.example.com/anypage
到anysub.example.com/private/anysub/public/anypage