.htaccess мешает работе $_SESSION

У меня есть сценарий форума, который я написал, и у меня также есть установщик. Скрипт форума работает, переписывая все URL-адреса в index.php (это установка MVC), а затем PHP направляет различные запросы туда, куда им нужно. Проблема в том, что хотя установщик также использует install/index.php очень похожим образом через MVC, переменная SESSION здесь по какой-то причине не обновляется, что мне нужно для установки. Я сократил его до строки № 9 ниже в моем файле .htaccess. Если оставить комментарий, то мой форум работает, а установщик нет.

Если я раскомментирую его, мой установщик работает, но перезапись URL на форуме не работает. Я думаю, что теперь знаю, почему это так, но я понятия не имею, как это исправить. Я полагаю, это потому, что htaccess переписывает все в index.php, включая install/index.php, поэтому мне нужно каким-то образом пропустить папку установки правил htaccess в строках № 11, № 12 и № 13.

Кто-нибудь знает как это сделать?

RewriteEngine On

# UNCOMMENT AND PROPERLY SET THE RewriteBase IF THE REWRITE RULES ARE NOT WORKING PROPERLY.
#RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]

какая строка 9? Отметьте это. .htaccess не мешает $_SESSION. У вас будет другая проблема, которая вызывает этот побочный эффект.

Martin 04.07.2019 22:33

Возможный дубликат Все, кроме одного каталога в mod_rewrite

Martin 04.07.2019 22:36
Стоит ли изучать 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
32
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

.htaccess не мешает $_SESSION.

Если ваша проблема является связана с вашей install/ папкой, то вам нужно написать более осторожный .htaccess mod_rewrite, чтобы принять (т.е. игнорировать) требуемый доступ к install/ папке:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Check and ignore if the requested path is /install/
RewriteCond %{REQUEST_URI} !^/install(/|$)  
RewriteRule . index.php [L]

Подробнее см. здесь

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