htaccess的用于附加的https:// WWW [关闭](.htaccess for appe

2019-09-23 20:38发布

我搜索了相当一段时间得到解决或暗示到我的查询,但没有发现任何有价值的东西。 基本上我有我的应用程序,它是SSL安全。 所有我想要的是

  1. 如果用户尝试没有HTTPS和WWW打开应用程序,它会自动追加“ https://www

  2. 如果用户输入“ https://mydomain.com ”,它应更改为“ https://www.mydomain.com

  3. 如果用户输入“ www.mydomain.com ”,它应更改为“ https://www.mydomain.com

我明白这一点可以通过的.htaccess来实现,但我有很多不了解这些文件的编写方式。

任何帮助将得到高度赞赏。

Answer 1:

启用了mod_rewrite并通过的.htaccess httpd.conf ,然后把这个代码在你.htaccessDOCUMENT_ROOT目录:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

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

RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]


Answer 2:

尝试添加这些规则在您的文档根htaccess文件:

RewriteEngine On
RewriteCond !{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]


Answer 3:

使用以下命令:

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


Answer 4:

在.htaccess文件

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://www.mydomain.com/$1 [L,R]
</IfModule>

的RewriteCond%{HTTPS}关闭检查HTTPS是关闭的。 如果确实关闭(URL不包含https://开头),然后重写规则适用,用户被重定向。



文章来源: .htaccess for appending https://www [closed]