我做了一个休息的PHP服务器,所以大部分路径都是这样的
/test/home.php/product
我的目的是保护api并防止直接访问PHP文件。 经过一些研究,我发现有人询问如何隐藏PHP扩展 这是他的解决方案:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
所以新路由为/test/product
,它提供与/test/home.php/product
相同的回复
但这似乎没用,因为旧的网址仍在工作
我不能阻止访问是否在网址中出现PHP扩展名?
PS:我的问题与htaccess prevent access to .php and allow only with RewriteRule
不同因为我要求保护其中包含php扩展的路由不以php结尾
答案 0 :(得分:1)
RewriteCond %{THE_REQUEST} /.+?\.php[\s?] [NC]
RewriteRule ^ - [F]
来自:htaccess prevent access to .php and allow only with RewriteRule
答案 1 :(得分:0)
您应该做的是在API文件的顶部:
{{1}}
然后创建一个允许访问的代理脚本:
{{1}}