Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用多个映射域重定向(htaccess和WordPress)_Wordpress_.htaccess_Mod Rewrite_Redirect_Mapping - Fatal编程技术网

使用多个映射域重定向(htaccess和WordPress)

使用多个映射域重定向(htaccess和WordPress),wordpress,.htaccess,mod-rewrite,redirect,mapping,Wordpress,.htaccess,Mod Rewrite,Redirect,Mapping,我们有一个面向多个国家的门户网站。每个国家都有自己的域名(即countrydomain.com、countrydomain.de、countrydomain.it)。 所有这些国家/地区域都通过符号链接映射到我们的主域(maindomain.org)。主域保存web门户的整个PHP代码。.htaccess管理所有域的重定向 到目前为止,这是有效的 现在,我必须为每个国家创建一个WordPress博客,该博客应该可以通过countrydomain.com/blog、countrydomain.de

我们有一个面向多个国家的门户网站。每个国家都有自己的域名(即countrydomain.com、countrydomain.de、countrydomain.it)。 所有这些国家/地区域都通过符号链接映射到我们的主域(maindomain.org)。主域保存web门户的整个PHP代码。.htaccess管理所有域的重定向

到目前为止,这是有效的

现在,我必须为每个国家创建一个WordPress博客,该博客应该可以通过countrydomain.com/blog、countrydomain.de/blog等访问。每个国家都应该有自己的博客,有自己的内容

我的问题是,由于映射关系,我不能为每个国家创建一个“blog”目录,而只在这个目录中安装Wordpress。我只有maindomain.org。 我曾尝试创建名为blog_com、blog_de、blog_it的目录,并使用htaccess将它们重定向到匹配的域/博客,但迄今为止没有成功

为每个国家创建一个wordpress文件夹是最佳做法吗?管理重定向需要哪些重定向规则?还是有更好的解决方案

下面是我们htaccess的一部分,向您展示当前的情况:

Options -Indexes
Options +FollowSymLinks

RewriteEngine on
RewriteBase /

# Enforce www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]

# Skip some directories
RewriteRule ^newsletter$ - [L]
RewriteRule ^newsletter/.*$ - [L]
RewriteRule ^cron/.*$ - [L]


# Rewrite main domain to main country domain (com)
RewriteCond %{HTTP_HOST} ^www\.maindomain\.org$ [NC]
RewriteRule ^(.*)$ http://www.countrydomain.com/$1 [QSA,R=301,L]

# Save current top level domain as environment variable
SetEnvIf Host ^www\.countrydomain\.com$ ENV_COUNTRYCODE=com
SetEnvIf Host ^www\.countrydomain\.de$ ENV_COUNTRYCODE=de
SetEnvIf Host ^www\.countrydomain\.it$ ENV_COUNTRYCODE=it

# SEO rewrite rules
RewriteRule ^/$ index.php [QSA,L]
RewriteRule ^$ index.php [QSA,L]
RewriteRule ^search$ index.php?status=19 [L]
RewriteRule ^myprofile$ index.php?status=50 [L]
RewriteRule ^myprofile/$ index.php?status=50 [L]
RewriteRule ^/?(xx)/([A-Za-z0-9ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ\%\+\_\-\/]{3,100}).html$ index.php?status=90&xxurl=$2 [L]
RewriteRule ^/?([A-Za-z0-9ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ\%\+\_\/\-]{3,300})/([0-9]+)(b|bw)$ index.php?status=25&id=$2&type=bw [QSA,L]
RewriteRule ^([0-9]+)(b|bw)$ index.php?status=25&id=$1&type=bw [QSA,L]
# ...

您考虑过带有映射域的WP Multisite吗?@b_uuu感谢您的建议。是的,我考虑过WP Multisite。但是,如果我在maindomain.org/wordpress/目录中安装启用了多站点的WP,并转到wordpress后端的网络设置,wordpress会告诉我,我的网络地址将是“maindomain.org”。。。(不是“maindomain.org/wordpress)。我不敢安装这个网络,因为我不确定在我设置了wordpress Multisite之后,门户网站的其余部分是否会正常运行…很遗憾,我无法在模拟测试环境中测试。是的,您当前的设置非常复杂,我想添加MS将是一个外科手术。@b_uu那么,您看到一个可能的没有多站点的e解决方案?