如何为特定的php文件禁用重定向到HTTPS?

时间:2019-09-07 13:52:34

标签: apache http redirect ispconfig

我想通过Web服务器上的http GET请求从Arduino微控制器中调用一些脚本,该服务器使用ISPConfig和apache2 Web服务器进行设置。

它被配置为执行从HTTP到HTTPS的重定向,但是不幸的是,Arduino EtherenetClient不支持HTTPS。

特定虚拟主机的ISPConfig具有以下规则:

<VirtualHost *:80>
...

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/\.well-known/acme-challenge/
RewriteRule ^ - [END]
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com$1 [R=301,NE,L]
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE]

</VirtualHost>

此规则执行重定向HTTP-> HTTPS

我尝试为.httpaccess文件中的特定文件重写此规则,以避免重定向HTTP-> HTTPS:

RewriteEngine On
RewriteCond %{HTTPS} ^off$
RewriteCond %{REQUEST_URI} !/scripts/exec.php$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

但不幸的是,它无法正常工作。

PS:另外,作为一项实验(并确保在Apache中使用.httpaccess文件),请使用以下规则重定向所有HTTPS-> HTTP:

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}

它导致循环301-> 302-> 301-> 302。

0 个答案:

没有答案