.htaccess重写引擎设置免除规则共享SSL

时间:2013-02-05 17:43:51

标签: apache .htaccess

我目前有多个域名指向相同的网络空间,即domain.com domain.co.uk等...

并且我使用.htaccess强制所有对domain.com的请求,这很好但是我需要使用我的主机提供的共享SSL,它指向服务器上的我的Web空间,我使用共享的ssl访问它域。 (http://shared_ssl.com/domain.co.uk)。

当我尝试访问共享的ssl时,我遇到的问题是.htaccess继续将域重写为http://www.domain.com

有没有办法让重写规则有例外?

这是我的.htaccess文件

RewriteEngine on

# Rewrite domain.org-> domain.com
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^www\.domain\.com [NC]
RewriteRule (.*) http://www.domain.com/$1 [R=301,L]

1 个答案:

答案 0 :(得分:0)

不知道我是否完全理解你的问题,但这是怎么做的:

  RewriteEngine on

  # Rewrite domain.org-> domain.com
  #RewriteCond %{HTTP_HOST} .                       # <- Not necessary

  # (you can have the whole shared_ssl.com if you want, but not necessary)
  RewriteCond %{HTTP_HOST} !^shared_ssl [NC]
  RewriteCond %{HTTP_HOST} !^www\.domain\.com [NC]
  # (and this is the preferable way to write it - I think)
  RewriteRule (.*) http://www.domain.com%{REQUEST_URI} [QSA,R=301,L]