htaccess 重写以要求 www、https 和 ip

htaccess rewrite to require www, https, and ip

我想知道如何编写 .htaccess 以便所有 URL: 1)使用https 2) 从 http://example.com to 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。

我做错了什么?

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

RewriteEngine On

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