htaccess mod_rewrite не сохраняет строку запроса на хостинге, но работает на localhost - PullRequest
0 голосов
/ 01 мая 2019

Я использую mod_rewrite для преобразования URL с 1 параметром.Однако проблема в том, что он не сохранился.Он работает на localhost при использовании $_GET['data'], но почему-то не работает на моем хостинге.Я читаю документацию и аналогичные вопросы о переполнении стека и, исходя из этого, знаю, что флаг QSA должен делать эту работу.

ПРИМЕР:

timeline.php?data=mb будет изменен на timeline/mb

Вот мой код:

RewriteRule ^timeline/([a-z]+)$ timeline.php?data=$1 [NC,L,QSA]

Полный .htaccess:

RewriteEngine on

#HTTPS ON
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

#Remove www
Rewritecond %{HTTP_HOST} ^www.canadabybike.me$
Rewriterule ^(.*) https://canadabybike.me/$1 [QSA,L,R=301]

#Rewrite parameters for timeline
RewriteRule ^timeline/([a-z]+)$ timeline.php?data=$1 [NC,L,QSA]

#Remove .php extension
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

Очевидно, что где-то есть ошибка, но я не могу ее найти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...