Добрый час!
Известно что Arduino то ли в силу слабого процессора то ли реализации EthernetClient не умеет HTTPS.
Но скрипт на сервере вызвать хочется.
Поэтому, вроде как можно отключить HTTP->HTTPS редирект на сервере который в vhost файле прописан так:
<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>
Ок. Открываю .httpaccess
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} ^/exp\.php$ <-- Кстати везде написано что должно быть exp\.php, но у меня без "/" никакого эффекта не было.
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [L]
Получаю следущее:
При вызове из веб бразуера
http://www.example.com/exp.php получаю циклический редирект 301->302->301->...
Здравствуйте, nen777w, Вы писали:
N>Ок. Открываю .httpaccess
N>N> RewriteEngine On
N> RewriteCond %{HTTPS} on
N> RewriteCond %{REQUEST_URI} ^/exp\.php$ <-- Кстати везде написано что должно быть exp\.php, но у меня без "/" никакого эффекта не было.
N> RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [L]
N>
N>Получаю следущее:
N>При вызове из веб бразуера http://www.example.com/exp.php получаю циклический редирект 301->302->301->...
В родительском контексте задано что для запроса без ssl (%{HTTPS} off) нужно делать редирект на HTTPS.
Вы добавляете к этому, что когда запрос с ssl (%{HTTPS} on) нужно редиректить обратно на HTTP.
Само собой получается зацикленный редирект.
Вам нужно написать что-то вроде:
RewriteCond %{HTTPS} off
RewriteRule ^ - [END]
Это должно отключить перенаправление полностью (в смысле все правила) для http. Лучше перед последней строчкой добавить ещё RewriteCond с более конкретным условием (например адрес хоста или конкретный uri на сервере).
ARI ARI ARI... Arrivederci!