htaccess匹配主机变量中的子域

时间:2015-07-03 08:05:43

标签: regex wordpress apache .htaccess mod-rewrite

我正在运行包含13个以上网站的多站点wordpress安装。

http://www.domain.com/wp-admin => https://secure.domain.com/wp-admin
http://www.domain.es/wp-admin => https://secure.domain.es/wp-admin
http://www.domain.it/wp-admin => https://secure.domain.it/wp-admin

我必须将每个域的wp-admin文件夹重定向到https://secure.domain.tld

示例:

RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.domain\.com
RewriteRule ^wp-admin https://secure.domain.com/wp-admin/ [R=301,L]

RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.domain\.es
RewriteRule ^wp-admin https://secure.domain.es/wp-admin/ [R=301,L]

现在我正在使用:

new RelayCommand(EnemyPopupTooltipEx, null);

public void EnemyPopupTooltipEx(object parameter){
   var values = (object[])parameters;
}

有效。 但它很糟糕。 是否有任何干净的解决方案不为每个域重复此操作?是否有可能与主机匹配的变量?

感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用正则表达式替换。因此,对于您给出的示例,您可以使用:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?domain\.(com|es)$
RewriteRule ^wp-admin https://secure.domain.%1/wp-admin/ [R=301,L,NC]