.htaccess进行动态页面重定向

时间:2019-04-15 07:56:01

标签: php .htaccess

我从所有页面上删除了所有.php扩展名。它工作正常,但是在那之后,如果我使用abc.php检查我的网站,它也可以工作。

因此,如果有人将abc.php写入不带.php扩展名的abc页面,该如何重定向页面。

以下是我用于删除.htaccess文件中的.php扩展名的代码。

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 个答案:

答案 0 :(得分: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]