使用 htaccess 添加带有 https 支持的 www

Posted

技术标签:

【中文标题】使用 htaccess 添加带有 https 支持的 www【英文标题】:use htaccess to add www with https support 【发布时间】:2011-01-07 00:57:52 【问题描述】:

有很多使用 .htaccess 将 www 添加到 url 的代码示例,但它们通常仅限于使用 http。有没有人有一个例子说明如何让它在这两种情况下工作?

【问题讨论】:

【参考方案1】:

当然:

RewriteCond %HTTP_HOST !^www\.
RewriteCond %HTTPSs ^on(s)|
RewriteRule ^ http%1://www.%HTTP_HOST%REQUEST_URI [L,R=301]

第二个条件检查 HTTPS 环境变量(onoff)是否设置为 on 并捕获附加的 s,然后可以使用 %1 .如果不匹配,%1 只是一个空字符串。

【讨论】:

@Gumbo,第二行应该是:%HTTPS 吗? 我在网址 ex 中添加双“www”时遇到问题。当用户在域中键入 URL 为“domainname.com”时为“www.domainname.com”【参考方案2】:

在 .htaccess 中使用此代码,它将同时添加 https 和 www

    RewriteEngine On
    RewriteCond %HTTP_HOST !^www\.
    RewriteCond %HTTPSs ^on(s)|
    RewriteRule ^ http%1://www.%HTTP_HOST%REQUEST_URI [L,R=301]

【讨论】:

以上是关于使用 htaccess 添加带有 https 支持的 www的主要内容,如果未能解决你的问题,请参考以下文章

apache_conf 添加deflate支持(压缩)和htaccess

通过https忽略htaccess文件

在 AWS lightail LAMP 中向 htaccess 文件添加子域

apache htaccess 不会将 https://www 添加到除 inside.php 之外的任何页面

HTACCESS 重写:忽略语言代码并将 index.php 添加到 url 而不更改它

在 apache2.conf 中包含 .htaccess 并带有“AllowOverride None”会减慢 Apache?