问题:使用重写规则将一个文件夹重定向到一个同名的PHP文件时出现的问题
P粉787820396
P粉787820396 2024-04-04 12:33:52
0
1
412

直接有根目录,如下所示,如您所见,我有一个文件夹文件,其名称与商店相同,您可以让我知道如何在 .htaccess 中编写 RewriteRule 来重定向任何请求,例如

http://clients/shop/http://clients/shop

http://clients/shop.php

我已经尝试过了

RewriteRule ^shop/(.+) shop.php [L,R]

但这将错误的 地址添加到 URL 中

======================

更新

====================

好吧,我发现这个解决方案在某种程度上有效

DirectorySlash Off 
RewriteEngine on 
RewriteCond %{THE_REQUEST} \s/+shop [NC]

RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)  /.php [R=302,L]

但是,只有当请求像 http://clients/shop 时才可以,并且当请求像 http://clients/shop/ 时它显示目录页面

P粉787820396
P粉787820396

全部回复(1)
P粉129275658

这应该可以完成你的工作

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\ /shop [NC]
RewriteRule ^shop - [R=404,L]

RewriteRule ^shop/(.*)$ shop.php [L,NC]
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!