Мои текущие правила перезаписи выглядят так:
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]
Как мне это решить?
Если вам нужны только параметры строки запроса, вы можете попробовать это RewriteRule:
RewriteRule ^video(.*) /video/index.php [QSA,L]
Флаг QSA будет «пересылать» параметры в следующий скрипт (например, index.php).