使用htaccess在home.php上禁用SSL不起作用?

使用htaccess在home.php上禁用SSL不起作用?,php,regex,.htaccess,ssl,Php,Regex,.htaccess,Ssl,下面是我用来在home.php页面上禁用SSL的htaccess代码,但它不起作用` RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^home.php(.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 它不工作,因为你的代码是反向的。如果您想关闭home.php的https,您需要检查https是否处于打开状态未关闭状态 RewriteEngine On RewriteCond %{HT

下面是我用来在home.php页面上禁用SSL的htaccess代码,但它不起作用`

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^home.php(.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

它不工作,因为你的代码是反向的。如果您想关闭
home.php的https,您需要检查https是否处于打开状态未关闭状态

RewriteEngine On
RewriteCond %{HTTPS} ^on
RewriteRule ^home\.php$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
根据您的评论,您需要排除home.php

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^/home\.php$ [NC] 
RewriteRule ^(.*)$ https://www.my-site.com/$1 [R=301,L]

但它不起作用
这是什么意思?什么不起作用?它在做什么或不做什么?然而,我看到的是,如果不使用https,您将重定向到https。所以你到底想完成什么?如果
https
不起作用,为什么要重定向到
https
(第3行)?@ShawnMehan那是个打字错误,我更新了上面的代码,我的服务器通过SSL,对于home.php,我想禁用SSL。@PanamaJack这意味着我在我的站点中使用SSL,并且仅对于home.php,我想将用户重定向到没有SSL的http://I.e.,因此我尝试使用上述代码,它并没有关闭home.php的SSL。实际上,我正在使用htaccess将所有用户重定向到https://上,所以使用相同的代码块实现此代码会导致问题。下面是我将所有用户重定向到https://的代码,那么我如何才能仅将他们重定向到http://for home.php
RewriteCond%{SERVER\u PORT}80 RewriteRule^(.*)$https://www.my-site.com/$1[R,L]
我更新了答案以解释您的其他规则。您现在可以使用这两个规则,它应该适合您。