使用htaccess和godaddy将HTTP重定向到HTTPS

时间:2017-08-24 20:26:57

标签: php apache .htaccess ssl mod-rewrite

我是网站新手,我最近在我的网站上安装了我的SSL证书和HTTPS协议。起初,我试图通过GoDaddy(MY Hoster)的控制面板安装证书,但我没有成功取得好成绩。我已经咨询过这个网站,找到了htaccess文件的不同问题,但经过多次测试后结果是一样的,不能使用HTTPS协议。这是我的HTACCESS代码:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^ index \ .php $ - [L]
RewriteCond% {REQUEST_FILENAME}! -f
RewriteCond% {REQUEST_FILENAME}! -d
RewriteRule. /web/index.php [L]
SSLOptions + StrictRequire
SSLRequireSSL
SSLRequire% {HTTP_HOST} eq "www.ipsextant.eu"
ErrorDocument 403 https://www.ipsextant.eu/web/
</ IfModule>
# END WordPress

一秒钟我看到了https协议,但是当我导航到网站时,我使用的协议是HTTP。

我尝试使用不同的代码,.htaccess文件位于网站的主要ROOT中。

我可以解决问题吗?

代码中是否存在语法错误?

提前致谢并抱歉我的英文

Bye Gianluca

3 个答案:

答案 0 :(得分:0)

但是,您的网站可以正常使用,强制将任何网页重定向到https://,这里有2行代码!

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

如果你想用PHP检查它,你可以这样做,

    if ($_SERVER['HTTPS'] != "on") { 
        $url = "https://". $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; 
        header("Location: $url");
      }

您的问题是缓存,从浏览器的设置/历史记录中删除您网站的缓存,您就会很好。

祝你好运,Gianluca;)

答案 1 :(得分:0)

我尝试使用你的htaccess解决方案,这是消息:

  

禁止

     

您无权访问此服务器上的/。另外,一个   尝试使用时遇到403 Forbidden错误   ErrorDocument来处理请求。

我删除了所有缓存浏览器,其他解决方案?

再见

答案 2 :(得分:0)

如何通过.htaccess强制使用SSL:

您可以通过在网站的.htaccess文件中添加以下规则来强制与网站建立HTTPS连接:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
相关问题