Использование htaccess для удаления косой черты
У меня есть URL-адрес "www.example.com/abc/abc.php". Если я изменю его на "www.example.com/abc/abc.php/asdasd", запускается какой-то бесконечный цикл, и память сервера достигает максимума 100%.
Я слышал, что есть какой-то способ.htaccess, с помощью которого я могу перенаправить любой файл "abc.php / asdasd" только на "abc.php". Пожалуйста, помогите, как я не могу понять это из других примеров, упомянутых в сети.
ПРИМЕЧАНИЕ. Я не хочу, чтобы этот символ "/" был удален, если он помещен в конец каталогов.
2 ответа
Я смог добиться того, чего хотел, с помощью следующего кода htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)\.php/(.*) $1.php [F]
</IfModule>
Это может быть не идеально, но делает работу. Теперь все, что после текста "abc.php", приводит к отсутствию страницы. Работает для случаев, таких как:
www.website.com/abc.php/
www.website.com/abc.php/asd
www.website.com/abc.phpasd
www.website.com/abc.php?
и т.п.
Это перенаправит один URL на другой:
Redirect 301 /abc.php/adssd http://www.example.com/abc.php
Тем не менее, это будет обрабатывать только этот пример. Вы должны опубликовать свой полный файл.htaccess, чтобы мы могли видеть, что на самом деле происходит