http到https重定向

时间:2014-09-10 11:52:38

标签: wordpress apache .htaccess mod-rewrite

帮我配置我的ssl证书。 我无法将http重定向到https。我的网站是wordpress powered。

我的.htaccess文件代码如下 -

# BEGIN WordPress

    # 4 weeks
    <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|swf)$">
        Header set Cache-Control "max-age=2419200, public"
    </FilesMatch>

    # 2 DAYS
    <FilesMatch "\.(xml|txt)$">
        Header set Cache-Control "max-age=172800, public, must-revalidate"
    </FilesMatch>

    # 2 HOURS
    <FilesMatch "\.(html|htm|css)$">
        Header set Cache-Control "max-age=7200, must-revalidate"
    </FilesMatch>

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /
        RewriteRule ^index\.php$ - [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /index.php [L]
    </IfModule>

    <ifModule mod_gzip.c>
        mod_gzip_on Yes
        mod_gzip_dechunk Yes
        mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
        mod_gzip_item_include handler ^cgi-script$
        mod_gzip_item_include mime ^text/.*
        mod_gzip_item_include mime ^application/x-javascript.*
        mod_gzip_item_exclude mime ^image/.*
        mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
    </ifModule>

# END WordPress

请告诉我如何将我网站的所有网页“http://example.com”重定向到“https://example.com

2 个答案:

答案 0 :(得分:1)

在你的htaccess文件中使用它

RewriteEngine On

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

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

答案 1 :(得分:1)

有很多问题已经回答过了。但是,您可以使用.htaccess中的以下行完成。

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

第一行打开重写引擎。第二行是有条件的,以检查HTTPS当前是否已经开启了&#39;已经,第三行是在条件为真时执行的操作,在这种情况下,是通过HTTPS重定向到当前URL。