Удобный URL-адрес HTACCESS и разрешающий метод GET

#php #apache #.htaccess #url #seo

#php #apache #.htaccess #url #seo

Вопрос:

Мой код

  Options -Multiviews

 RewriteEngine On
 RewriteBase /

 RewriteRule ^([a-z0-9-] ).html$ /index.php?cat=$1 [L]
 

Если я получу доступ

 mysite.com/name-of-category.html 
 

это работает, но если я получу доступ

 mysite.com/name-of-category.html?anything=something
 

он показывает веб-страницу, но $_GET["anything"] ничего не показывает.

Ответ №1:

Вы должны указать параметр с именем QSA или «Добавление строки запроса»:

 RewriteRule ^([a-z0-9-] ).html$ /index.php?cat=$1 [L,QSA]
 

Это гарантирует, что исходные строки запроса также будут включены как часть вашего нового URL-адреса.

Комментарии:

1. Большое спасибо @Answererer!

2. Обратите внимание, что пробел между флагами [L, QSA] не будет работать 🙂 (У ответчика это правильно — пробел между ними отсутствует [L,QSA] )