htaccess重写需要www,https和ip

时间:2015-02-19 22:23:04

标签: apache .htaccess mod-rewrite rewrite forwarding

我想弄清楚如何编写.htaccess以便所有网址: 1)使用https 2)从http://example.com转发到https://www.example.com 3)从服务器IP转发到域

我试过了:

RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} ^111\.11\.111\.111
RewriteRule ^ https://www.{HTTP_HOST}/%{REQUEST_URI} [L,R=301]

但这不起作用。 IP是实际的服务器IP。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

您可以在一个规则中完成所有这些操作:

RewriteEngine On

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.example.com%{REQUEST_URI} [L,R=301,NE]