Перенаправление http на index.php вместо https

Поэтому мне нужно перенаправить протокол HTTP на https, мой SSL уже включен и работает, но проблема в следующем: всякий раз, когда я ввожу URL-адрес HTTP, я перенаправляюсь на страницу index.php моего сайта.

Вот мой код:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# add trailing slash to directories and force SSL
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_URI} !(/$) 
RewriteCond %{SERVER_PORT} 80 
RewriteRule (.*) https://example.com/$1/ [R=301,L]

# And for the files
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://example.com/$1 [R,L]

Думаю, ваш вопрос продублирован, попробуйте по этой ссылке: stackoverflow.com/questions/45193829/…

Jaime Alvarado Jiménez 23.07.2018 09:38

Это не имеет особого смысла, если %{HTTPS} !=on соответствует, вы уже перенаправили все на HTTPS в этот момент, поэтому когда вы когда-нибудь ожидаете, что следующий материал (который затем снова пытается проверить, поступает ли запрос через порт 80) окажет какое-либо влияние …?

CBroe 23.07.2018 09:51
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
153
1

Ответы 1

Согласно Apache2 документация вы можете упростить свой виртуальный хост примерно так:

   <VirtualHost *:80>
      ServerName www.example.com
      Redirect Permanent/ https://www.example.com/
   </VirtualHost>

   <VirtualHost *:443>
      ServerName www.example.com
       DocumentRoot /usr/local/apache2/htdocs
       SSLEngine On
       //ALL Your specifics configurations here
   </VirtualHost>

Это позволит вам перенаправить каждый запрос на порт 80 на https. Таким образом, вам нужно настроить собственный индекс каталога на виртуальном хосте 443.

Надеюсь на эту помощь.

Извините, я не понимаю, о чем вы говорите, когда говорите о настройке индекса каталога на виртуальном хосте 443.

Matt 23.07.2018 17:03

вы сказали: «Меня перенаправляют на index.php», я считаю, что это ошибка. В любом случае, правильное перенаправление HTTPS выполняется следующим образом.

Alexandre Painchaud 23.07.2018 17:41

Должен ли я использовать этот код в моем htaccess? и мой общедоступный каталог не htdocs, iit public_html, могу ли я изменить его? У меня нет знаний в этой области, я делаю это только потому, что меня заставляют.

Matt 23.07.2018 20:24

Мой пример для виртуального хоста. Чтобы получить пример для htaccess, проверьте ссылку, которую я предоставил

Alexandre Painchaud 23.07.2018 21:19

Другие вопросы по теме