Как исключить Get из htaccess при обрезании .php

Необходимо обрезать .php в урле, но при имеющемся коде (ниже) в htacess перестают корректно работать некоторые скрипты с Get параметрами. Как туда (в код ниже) правильно дописать RewriteCond %{REQUEST_METHOD} !=GET чтобы работала и обрезка .php и post и get?

RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{THE_REQUEST} \s(\S+)\.php
RewriteRule ^ %1 [R=301,L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule (.*) $1.php [L]

Ответы (1 шт):

Автор решения: pgood

Явно передать GET-параметры можно из переменной %{QUERY_STRING}. И у вас там 2 правила, к какому правилу вы хотите добавить условие? Если к первому, то так:

RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{REQUEST_METHOD} !=GET
RewriteCond %{THE_REQUEST} \s(\S+)\.php
RewriteRule ^ %1?%{QUERY_STRING} [R=301,L]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule (.*) $1.php [L]
→ Ссылка