子域名" m。"用Wordpress和。 htaccess(htaccess中重写规则的冲突。)

时间:2014-03-21 14:22:37

标签: wordpress .htaccess mod-rewrite subdomain

我通常不习惯发帖,因为我总是通过搜索论坛找到答案,但今天我遇到了一个真正的问题!

我在域的子目录中安装了Wordpress安装多站点。也就是说,它位于 http://mondomaine.com/fr/

我希望在子域“m”中制作移动版本。我希望我的移动版本可以在 http://m.mondomaine.com/fr/ 上找到。

我的主机创建了指向网站根目录的子域名。

当我想从我的移动子域访问某个页面时,必须将其重定向到主页/ fr /。

我试图改变我的.htaccess,但是没有办法,或者我有一个重定向循环,或者我有一个404页。

我认为这些规则之间存在冲突,但我真的尝试并测试了很多解决方案,但我没有找到任何结论。

Wordpress生成的原始htaccess,位于目录/ fr:

RewriteEngine On

RewriteBase /fr/
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
我修改了

.htaccess:

RewriteEngine On

RewriteBase /fr/
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteCond %{HTTP_HOST} !^m\.(.*) [NC]
RewriteRule . index.php [L]

RewriteCond %{HTTP_HOST} ^m\.(.*) [NC]
RewriteRule ^(.*)$ http://mondomaine.com/fr/$1 [L,P]

提前感谢那些回复

的人

1 个答案:

答案 0 :(得分:1)

如果启用了mod_proxy,请将最后一个m.规则移到顶部,在RewriteEngine On下方,如下所示:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^m\.(.+)$ [NC]
RewriteRule ^(.*)$ http://mondomaine.com/fr/$1 [L,P]