Apache中HTTP和HTTPS请求的区分
对于一个特定的文件,我需要根据它是HTTP还是HTTPS以及HTTP方法GET重定向。几乎没有像这样的问题 我使用setenvif来了解传入的请求是HTTP还是HTTPS SetEnvifLocase代理SSL。是。这是HTTPS吗 如何在RewriteCond中使用此变量?并提供以下重写/重定向指令将其重定向到HTTPSApache中HTTP和HTTPS请求的区分,apache,Apache,对于一个特定的文件,我需要根据它是HTTP还是HTTPS以及HTTP方法GET重定向。几乎没有像这样的问题 我使用setenvif来了解传入的请求是HTTP还是HTTPS SetEnvifLocase代理SSL。是。这是HTTPS吗 如何在RewriteCond中使用此变量?并提供以下重写/重定向指令将其重定向到HTTPS 提前感谢要检查请求是否来自http或https您可以使用RewriteCond和%{https} RewriteCond %{HTTPS} on RewriteRule
提前感谢要检查请求是否来自http或https您可以使用
RewriteCond
和%{https}
RewriteCond %{HTTPS} on
RewriteRule ^particular.php$ /https.php [L,R=302]
RewriteCond %{HTTPS} off
RewriteRule ^particular.php$ /http.php [L,R=302]
更新:既然您要求使用环境变量,以下是您的解决方案:
RewriteCond %{IS_HTTPS} yes
RewriteRule ^particular.php$ https://%{HTTP_HOST}/https.php [L,R=302]
RewriteCond %{IS_HTTPS} no
RewriteRule ^particular.php$ http://%{HTTP_HOST}/http.php [L,R=302]
我想改用环境变量。这可能吗?我想改用环境变量。可能吗?当我在RewriteRule^(*)/Mypage.xml上使用RewriteCond%{HTTPS}时,[F]显示禁止,即使请求是HTTPS。你能让我知道更多关于这个吗??另外,请您在回答中解释一下重写规则。我已经使用了第一个规则,如果它为“开”,则https和http都显示为200k,否则为403。请您指导我如何设置EnvifNocase代理SSL。*是。*是HTTPS RewriteEngine on RewriteCond%{HTTPS}on RewriteRule^(.*)/DiscoveryTree.xml-[F]好的,首先需要用变量的实际值替换
是
,然后检查编辑!