在apache上强制使用https
我使用Apache服务器发布我的网站。问题是我想强制我的网站使用HTTPS。例如,如果有人输入URL“”,它应该重定向到“” 我使用以下规则创建了一个在apache上强制使用https,apache,.htaccess,ssl,https,no-www,Apache,.htaccess,Ssl,Https,No Www,我使用Apache服务器发布我的网站。问题是我想强制我的网站使用HTTPS。例如,如果有人输入URL“”,它应该重定向到“” 我使用以下规则创建了一个.htaccess文件: # To use 404.html as default 404 error page. ErrorDocument 404 /404.html # To force website use https and remove www. subdomain. RewriteEngine On RewriteCond %
.htaccess
文件:
# To use 404.html as default 404 error page.
ErrorDocument 404 /404.html
# To force website use https and remove www. subdomain.
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://alireza.co/$1 [R=301,L]
现在的问题是,每当我输入URL时,无论是使用https
或http
,还是使用www.
或不使用它,我都会收到错误过多重定向
或Firefox中的网站没有正确重定向
我使用作为我的主机提供程序。我的网站是静态的(仅HTML/CSS)。我试了很多方法,但都没有成功。我刚想出来。我唯一要做的就是用以下简单的规则重写我的
.htaccess
文件:
# To remove www. from URL
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.alireza\.co [NC]
RewriteRule ^(.*)$ https://alireza.co/$1 [L,R=301]
#To force HTTPS
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
# To make 404.html default 404 error page
ErrorDocument 404 /404.html
删除www.
很简单.htaccess
规则,但是我让它重定向到$1而不是$1