Jump to content
  • 0

Отключить https для определенного url


recorder
 Share

Question

Здравствуйте! На сайте подключен ssl, включен редирект с http на https через htaccess, нужно для определенной страницы (url) отключить https без последствий для всего сайта. Подскажите пожалуйста решение.

 

 

htaccess:

RewriteCond %{SERVER_PORT} 80 [OR]RewriteCond %{HTTPS} offRewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NE,L]
Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

 Для чего это вообще?

 

С помощью сервиса выводится на странице функционал-виджет. Но этот сервис не работает по протоколу https, только http, соответственно на странице виджет не отображается. Именно для этого нужно именно на этой странице отключить https.

Link to comment
Share on other sites

  • 0

Если виджет сторонний то самое простое это можно запихнуть его в iframe

 

Через iframe не получится, сам виджет при активации оборачивается во фрейм. Техподдержка ответила что https виджет не поддерживает.

Я уверен что есть решение через htaccess.

Link to comment
Share on other sites

  • 0
Я уверен что есть решение через htaccess.

конечно есть, прописать исключение, что-то типо:

RewriteCond %{REQUEST_URI} !^тут адрес который нужно исключитьRewriteCond %{SERVER_PORT} 80 [OR]RewriteCond %{HTTPS} offRewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NE,L]
Link to comment
Share on other sites

  • 0

у меня работает, а у вас нет )))

 

К сожалению именно так.

 

Кстати не знаю важно это или нет - сайт на WordPress. Я прописал ваш вариант и в итоге htaccess стал таким:

 

# BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_URI} !^\/nosslpage$RewriteCond %{SERVER_PORT} !^443RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]RewriteCond %{SERVER_PORT} 80 [OR]RewriteCond %{HTTPS} offRewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NE,L]RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule># END WordPress

 

Ваш код я пробовал выносить и за ifmodule полностью - результат нулевой.

Link to comment
Share on other sites

  • 0

нужно было не дописать, а заменить:

# BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_URI} !^\/nosslpage$RewriteCond %{SERVER_PORT} 80 [OR]RewriteCond %{HTTPS} offRewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NE,L]RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule># END WordPress

или

# BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_URI} !^\/nosslpage$RewriteCond %{SERVER_PORT} !^443RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule># END WordPress
Link to comment
Share on other sites

  • 0

Так тоже отказывается работать. Может дело в WP ? Там в админке прописаны два адреса с https относительно которых работают ссылки.

если WP генерирует абсолютные ссылки, то для нужной страницы нужно сделать обратный редирект, что приведет к зацикливанию в правилах редиректов, это решается, но это костыль тот ещё.

 

Вообще правильный сайт работающий через https должен так же правильно работать и по http и тогда не будет никаких проблем с переадресацией туда и обратно.

 

Раз у сайта включен SSL значит он уже априори будет работать на обоих протоколах и зачем вообще сделали принудительную переадресация не понятно, достаточно было просто ссылки на страницах генерировать для нужного протокола, но при этом сохранялась бы возможность в любой момент сделать ссылку на не защищенную страницу.

 

я бы убрал вообще редирект, тем более вы говорите что WP сам генерирует ссылки с https

# BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteCond %{HTTPS} onRewriteRule ^(nosslpage)$ http://%{HTTP_HOST}/$1 [R=301,L]RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule># END WordPress

К сожалению я не могу проверить эти правила у меня на сервере включен ssl в nginx, а не в apache

Link to comment
Share on other sites

  • 0

wwt, а можно сделать как-нибудь наоборот? Дано: сайт(WP) + форум(IPS) Для сайта отключить тогда вообще https а для форума оставить? Форум в подпапке. Я сейчас на сайте все ссылки обратно на http перевел, в корневой папке из htaccess убрал перенаправление, в папке форума в htaccess прописал редирект с http на https. Сейчас сайт доступен по двум протоколам, а должен по одному, как я понял нужно выбрать основной. Как тогда сделать перенапрвление с https на http если кто наберет вдруг? А то по https теперь ни скрипты ни изображения не грузятся, поэтому надо как-то закрыть доступ. 

 

 

 

Вообще правильный сайт работающий через https должен так же правильно работать и по http и тогда не будет никаких проблем с переадресацией туда и обратно.   Раз у сайта включен SSL значит он уже априори будет работать на обоих протоколах и зачем вообще сделали принудительную переадресация не понятно, достаточно было просто ссылки на страницах генерировать для нужного протокола, но при этом сохранялась бы возможность в любой момент сделать ссылку на не защищенную страницу.  

 

 

Так а как же поисковики? Везде все сеошники пишут что нужно оставить один протокол и сделать редирект с одного на другой. Я в этой теме ни бум бум конечно, но ведь не будут зря писать такие вещи )) Я в вебмастере в гугле и яндексе прописал основной url с https, наверно нужно обратно обычный вернуть.

Edited by recorder
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By Alarr
      При стандартных Вордпрессовских комментариях, когда оставляешь коммент и кликаешь на сабмит - изменяется урла.
      Например:
      Было вот так - http: // testsite / uncategorized / test-post-1 /
      А становится вот так - http: // testsite / uncategorized / test-post-1 / # comment-1428
      Или даже вот так: http: // testsite / uncategorized / test-post-1 /? Unapproved = 1246588 & moderation-hash = 40271ae6cdb307b9243b08107da795ae # comment-1246588
      Подскажите пожалуйста, что нужно сделать, чтобы урла текущей страницы никогда не менялась при комментировании.
      Там есть какое-то простое решение, или нужно аяксом это дело решать?
      Спасибо.
    • By HostingRU
      Здравствуйте.
      Наша компания Hostingru.net занимается предоставлением услуг виртуального хостинга/VPS, регистрации доменов, продажи сертификатов SSL, а также аренды выделенных серверов. Работаем с 2007 года.
      Дешевый хостинг

      - Цены начинаются от 37 рублей в месяц
      - Безлимитный трафик
      - Размещение на SSD
      - Ежедневный backup
      - Бесплатно перенесём ваш сайт к нам от другого хостера(кроме тарифного плана Микро)
      - Выбор версии php(5.6-7.4) и модулей
      - Бесплатный SSL сертификат Let's Encrypt
      - Бесплатный домен 3-го уровня
      - Поддержка кириллических доменов
      - На тарифах с Cpanel конструктор сайтов с более чем 200 шаблонами
      - Установка CMS и скриптов в 1 клик(более 280)
      - Cloudlinux
      - Поддержка Zend Guard и ionCube
      - В случае переноса сайта от другого провайдера и оплаты хостинга на срок не менее 6 месяцев мы предоставим вам месяц хостинга в подарок
      - Круглосуточная тех. поддержка
      - Выбор панели управления ISPManager или Cpanel
      Ознакомится с ценами на дешевый хостинг
      Безлимитный хостинг

      - Цены начинаются от 79 рублей в месяц
      - Безлимитный трафик, FTP, почтовые ящики(на тарифных планах кроме первого также неограниченное количество сайтов, баз данных, доменов и поддоменов)
      - Домен .RU, .РФ или .РУС бесплатно при оплате за год и дольше(2 года на тарифе "Первый", домен регистрируется на данные клиента)
      - Поддержка кириллических доменов
      - Размещение на SSD
      - Ежедневный backup
      - Бесплатно перенесём ваш сайт к нам от другого хостера
      - Выбор версии php(5.6-7.4) и модулей
      - Бесплатный SSL сертификат Let's Encrypt
      - Бесплатный домен 3-го уровня
      - Конструктор сайтов с более чем 200 шаблонами бесплатно
      - Установка CMS и скриптов в 1 клик(более 280)
      - Cloudlinux
      - Поддержка Zend Guard и ionCube
      - В случае переноса сайта от другого провайдера и оплаты хостинга на срок не менее 6 месяцев мы предоставим вам месяц хостинга в подарок
      - Круглосуточная тех. поддержка
      - Выбор панели управления ISPManager или Cpanel
      - Скидки при оплате за год и более(до 30%)
      - Бесплатный тестовый период до 15 дней
      Ознакомится с ценами на безлимитный хостинг
      Премиум хостинг

      - Цены начинаются от 349 рублей в месяц
      - Большое количество системных ресурсов
      - Безлимит трафика, FTP, почтовых ящиков, сайтов, баз данных, доменов и поддоменов
      - Домен .RU, .РФ или .РУС бесплатно при оплате за год и дольше(домен регистрируется на данные клиента)
      - Поддержка кириллических доменов
      - Размещение на SSD
      - Ежедневный backup
      - Бесплатно перенесём ваш сайт к нам от другого хостера
      - Выбор версии php(5.6-7.4) и модулей
      - Бесплатный SSL сертификат Let's Encrypt
      - Бесплатный домен 3-го уровня
      - Конструктор сайтов с более чем 200 шаблонами бесплатно
      - Установка CMS и скриптов в 1 клик(более 280)
      - Cloudlinux
      - Поддержка Zend Guard и ionCube
      - В случае переноса сайта от другого провайдера и оплаты хостинга на срок не менее 6 месяцев мы предоставим вам месяц хостинга в подарок
      - Круглосуточная тех. поддержка
      - Выбор панели управления ISPManager или Cpanel
      - Скидки при оплате за год и более(до 30%)
      Цены на премиум хостинг
      Хостинг для CMS

      Купить хостинг для CMS
      Промокод на скидку 50% на первый месяц хостинга: HOSTINGRU.NET
      Домены

      - Домен от 99 рублей в год
      - Более 70 доменных зон
      - Домен регистрируется на данные клиента
      - Регистрируем домены в популярных зонах: .ru, .рф, .рус, .org, .com, .org, .net, .info, .name, .moscow,  .москва
      - Надоели обычные домены? Хотите выделиться? Мы регистрируем домены в необычных доменных зонах: .art, .bet, .blog, .business, .fun, .futbol, .games, .gift, .group, .kitchen, .link, .online, .ooo, .pet, .photo, .pictures, .promo, .top, .vip, .wiki, .work
      - Поддержка кириллических доменов(в зонах, где это возможно)
      - При регистрации домена 1 месяц хостинга в подарок
      - Можем перенести ваш домен к нам(бесплатно от регистраторов: REG.RU, Webnames.ru, r01.ru)
      Купить домен
      SSL Сертификаты

      - Сертификаты от 399 рублей в год
      - Поддержка 99.3% браузеров
      - Выдача сертификата от 3 минут
      - Платный SSL сертификат поднимает авторитет сайта в глазах пользователя
      - Наличие SSL сертификата необходимо для защиты передаваемой конфиденциальной информации между сайтом и пользователем
      - Месяц хостинга бесплатно при покупке сертификата
      Купить SSL сертификат
      VPS/VDS сервера
      - Цены от 209 рублей в месяц
      - SSD или NWMe
      - Гарантированные системные ресурсы
      - Виртуализация OVZ или KVM
      - Бесплатная установка
      - Мощные сервера и надёжный ЦОД
      - Круглосуточная тех. поддержка
      - Сервера в Москве
      - Полные права и доступ
      - Тестовый период для юр. лиц
      - Установка ОС на ваш выбор
      - Выделенный IP-адресс
      - Дополнительные платные услуги
      - Активация сервера в течении 5-10 минут
      Купить VPS/VDS
      Вам не хватает ресурсов VPS/VDS? Возможно вам подойдут наши выделенные серверы
      Хотите заработать? У нас есть реферальная программа. Получайте 10% от всех расходов привлечённого клиента ПОЖИЗНЕННО. Привлечённый клиент получает скидку 30% на первый месяц хостинга. Вы можете потратить деньги на наши услуги или вывести их. Подробнее об условиях партнёрской программы
      Мы будем рады видеть Вас в числе наших клиентов!
      С уважением команда, ХостингРУ.
    • By blackrusjew
      Добрый
      Имеем одностраничник с несколькими якорями вида https://www.site.ru/#awards
      Возможно ли через htaccess и 301редирект привести их к виду https://www.site.ru/#awards/
      Спасибо)
       
    • By d0ublezer0
      Привет!
      Хочу зафигачить ЧПУ для страниц, генерируемых фильтром.
      Ленивый разработчик (breakdesigns, привет!) ноет, что это мол ему лично это не нужно, писать роутер и вообще никому из его клиентов это не интересно. Хочу свой, с параметрами и разделами.
       
      Допустим, страница
      https://www.road.media/filter/avtomagnitoly/?custom_f_24[0]=424d57&custom_f_25[0]=5831
      где custom_f_24[0]=424d57 это марка авто BMW
      а custom_f_25[0]=5831 это модель авто X1
       
      custom_f_xxx - это фиксированные коды характеристик, участвующих в фильтрации
      424d57, 5831 и другие - это сами значения.
       
      Характеристики я смогу достать в список для формирования htaccess
      Сами значения элементов фильтра тоже подчиняются алгоритму, я могу их обратно расшифровать и сформировать список.
      Т.е. матрицу сопоставления что чему равно - я смогу собрать.
       
      Вопрос - как это сделать в .htaccess, чтобы CMS продолжила работать штатно, а посетитель и поисковик видели нормальный ЧПУ?
      Указанную выше ссылку я представляю как:
      https://www.road.media/filter/avtomagnitoly/bmw/x1
       
      Притом, могут быть более сложные варианты
      https://www.road.media/filter/avtomagnitoly/?custom_f_24[0]=424d57&custom_f_25[0]=5831&custom_f_25[1]=5835
      тут отмечены BMW, X1 и X5
      в таком случае думаю URL должен быть каким-то таким
      https://www.road.media/filter/avtomagnitoly/bmw/x1_x5
       
      Марка тоже может быть не единичной.
      Вообще набор значений может быть разным:
      https://www.road.media/filter/avtomagnitoly/?custom_f_24[0]=4d657263656465732d42656e7a&custom_f_24[1]=4c616e6420526f766572
      тут например
      4d657263656465732d42656e7a = Mercedes-Benz
      4c616e6420526f766572 = Land Rover
       
      Соответственно, ожидается ссылка вида
      https://www.road.media/filter/avtomagnitoly/land_rover_mercedes_benz
       
      Это возможно вообще?
    • By domobisnes
      Друзья, помогите понять, почему не работает автозамена расширений через htaccess. По сути должна быть замена jpg/png на webp если браузер пользователя поддерживает webp. В самом посте всегда указана картинка .jpg 
      Замена работает если только удалить в папке сайта картинку с расширением .jpg либо изменить на .jpeg (методом тыка)
      Причем я знаю, что в консоли будет все равно отражаться что у картинки расширение .jpg и факт того, что есть подмена на webp видно только в графе type консоли вебразработчика. 
      Вот, собственно код:
      <IfModule mod_rewrite.c>   RewriteEngine On   # Check if browser supports WebP images   RewriteCond %{HTTP_ACCEPT} image/webp   # Check if WebP replacement image exists   RewriteCond %{DOCUMENT_ROOT}/$1.webp -f   # Serve WebP image instead   RewriteRule (.+)\.(jpe?g|png)$ $1.webp [T=image/webp,E=accept:1] </IfModule> <IfModule mod_headers.c>   Header append Vary Accept env=REDIRECT_accept </IfModule> <IfModule mod_mime.c>   AddType image/webp .webp </IfModule>  
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy