#php #.htaccess
#php #.htaccess
Вопрос:
Я удалил все расширения .php со всех страниц. Он работает нормально, но после этого, если я проверю свой сайт с помощью abc.php это тоже работает.
Итак, как я могу перенаправить страницу, если кто-то напишет abc.php на страницу abc без расширения .php.
Ниже приведен мой код для удаления расширения .php в файле .htaccess.
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*.php$ %{REQUEST_FILENAME}.php [QSA,L]
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Может кто-нибудь помочь мне в этом.
Ответ №1:
Вы можете использовать этот набор правил:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
# To externally redirect /dir/file.php to /dir/file
RewriteCond %{THE_REQUEST} s/ (. ?).php[s?] [NC]
RewriteRule ^ /%1 [R=301,NE,L]
# To internally rewrite /dir/file to /dir/file.php
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(. ?)/?$ $1.php [L]