Как я могу игнорировать часть URL?
Мои текущие правила переписывания выглядят так:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond ${REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_URI} ^/video/(.*)$
RewriteRule ^(.*)$ /video/index.php [L]
URL как example.com/video/?p=2231&c=395840&s=849264&l=101641
работает отлично.
По причинам SEO, мне нужно разрешить любую строку между video/
а также ?p=2231&c=395840&s=849264&l=101641
, Например, URL example.com/video/string/string/?p=2231&c=395840&s=849264&l=101641
не должен карта /string/string/
к index.php.
Я попробовал следующее правило, но оно не сработало:
RewriteRule ^video/(.+)/(.+)/(.+)$ /video/$3 [L]
Как мне решить это?
1 ответ
Если вам нужны только параметры Query String, вы можете попробовать это RewriteRule:
RewriteRule ^video(.*) /video/index.php [QSA,L]
QSA Flag будет "пересылать" параметры в следующий скрипт (т.е. index.php).