将子域重定向到查询参数

时间:2014-02-26 13:49:32

标签: .htaccess mod-rewrite url-rewriting

我想将subdomain.domain.fr等网址转换为domain.fr/index.php/subdomain 我尝试了那个htaccess:

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{HTTPS} !=on
    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
    RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]

    RewriteCond %{HTTP_HOST} ^([^\.]+)\.domain.fr$ [NC]
    RewriteRule ^(.*)$ /index.php/%1 [L,QSA]
</IfModule>

有了这个,我的网站用domain.fr回复,但是我收到了subdomain.domain.fr的内部服务器错误

对我做错了什么的想法?

1 个答案:

答案 0 :(得分:0)

你可能会遇到循环错误。您可以使用此代码来避免它:

RewriteEngine On

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{HTTP_HOST} ^([^.]+).domain\.fr$ [NC]
RewriteRule ^ /index.php/%1 [L]