将某些页面重定向到http,将某些页面重定向到https

时间:2012-01-04 06:54:00

标签: php .htaccess url-rewriting

我已将此代码用于重定向到https:

RewriteEngine on
#Options +FollowSymlinks
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*) https://www.mysite.com/test/$1 [R,L]

但是我需要一些使用http而不是https的页面。

实施例: 我需要这个网址:http://www.mysite.com/test/contact.php

3 个答案:

答案 0 :(得分:1)

尝试:


RewriteEngine on
#Options +FollowSymlinks
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*) https://www.mysite.com/test/$1 [R,L]

RewriteCond %{SCRIPT_FILENAME} \/contact\.php [NC]
RewriteRule ^(contact.php)$ http://%{HTTP_HOST}/$1 [R,L]

答案 1 :(得分:0)

您可以在PHP中使用一些条件语句和标题

if(something) {
   header("Location: https://www.example.com/");
} 

请确保在header()

之前不输出任何内容

答案 2 :(得分:0)

这是条件

   RewriteCond %{HTTPS} off

    RewriteCond %{SCRIPT_FILENAME} !\/contact\.php [NC]
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/test/$1 [R,L]

    RewriteCond %{HTTPS} on

    RewriteCond %{SCRIPT_FILENAME} \/contact\.php [NC]
    RewriteRule ^(.*)$ http://%{HTTP_HOST}/test/$1 [R,L]