使用.htaccess的虚拟子域

时间:2015-04-16 07:48:23

标签: wordpress apache .htaccess mod-rewrite subdomain

我正在尝试使用.htaccess和wordpress创建虚拟子域。 但它似乎无法正常工作。使用wordpress我得到的网址如下:     foo.eu/test-pagina/?lang=fr

我设法将其重写为我想要的内容:     fr.foo.eu/test-pagina /

但是当重写此URL时,页面将返回500内部服务器错误。

我还在dns配置中为子域做了一个通配符。

我是否必须为我的root中的每个子域创建子文件夹?

我当前的.htaccess代码是:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} !^([a-z]{2})\.hypnose\.eu$ [NC]
RewriteCond %{THE_REQUEST} \ /+([^\?]*)\?lang=([a-z]{2})&?([^\ ]*)
#RewriteRule ^ http://%2.hypnose.eu/%1?%3 [L,R]

RewriteCond %{QUERY_STRING} !(^|&)lang=
RewriteCond %{HTTP_HOST} ^([a-z]{2})\.hypnose\.eu$ [NC]
RewriteRule ^(.*)$ /$1?lang=%1 [L,QSA]

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]
</IfModule>

谁能告诉我,我做错了什么?

1 个答案:

答案 0 :(得分:0)

你有没有添加&#34; fr&#34;作为域控制面板中的子域名?

在你的htaccess

中添加它
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com
RewriteRule ^(.*)$ http://domain.com/test-pagina/%1/$1 [L,NC,QSA]