繁体   English   中英

.htaccess添加www并确保https://

[英].htaccess add www AND ensure https://

摔跤已经很长时间了,没有成功。 我正在寻找的是.htaccess规则以确保所有请求:

  1. 总是以“ www”开头
  2. 始终安全(https)

在我尝试过的所有规则中,也许这是最接近的:

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

这套规则非常适用于:

  • http://www.example.com > https://www.example.com
  • http://example.com > https://www.example.com

不适用于:

  • http://www.example.com/index.cfm?myquerystring
  • http://example.com/index.cfm?myquerystring

更新:

在我的情况下,实际的问题是,对于某些文件扩展名(.cfm,.cfml,.cfc),在我的重写规则生效之前,该请求已“移交给”应用程序服务器。 感谢所有回应。

尝试以下规则:

RewriteEngine On

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

这应该做的工作:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]

请注意,.htaccess文件应位于网站主文件夹中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM