为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 htaccess 隐藏 php 文件扩展名?

如何使用 htaccess 隐藏 php 文件扩展名?

PHP
幕布斯7119047 2023-09-22 17:51:26
RewriteRule ^site/index$ site/index.php [NC,L]此行确实成功隐藏了扩展名。现在我不希望带有扩展名的页面可以访问;如果尝试使用扩展名访问该页面,则必须显示错误。只有隐藏了扩展名的扩展名才必须可访问。
查看完整描述

2 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

展示了如何像您所问的那样抛出错误消息,但为什么您要抛出错误消息而不是仅仅重定向example.com/page.phpexample.com/page?这是 .htaccess 代码:

RewriteEngine on
RewriteRule ^(.+)\.php$ /$1 [R,L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*?)/?$ /$1.php [NC,END]

这可以确保 和 都/page转到/page.php相同的 url ( /page) 并提供相同的页面/文件 ( /page.php)


查看完整回答
反对 回复 2023-09-22
?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

它必须显示一个错误。

要在访问时返回 403 Forbidden,您可以在现有重写之前/site/index.php执行以下操作:

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^site/index\.php$ - [F]

REDIRECT_STATUS为了防止重写的 URL 也触发 403,检查 的条件是必要的。

然而,重定向/更正此类请求会更利于 SEO。

在旁边:

此行确实成功隐藏了扩展名。

我猜只是措辞,但“这条线”并没有“隐藏”任何东西。它专门将扩展添加回来。(扩展程序已隐藏在初始请求中。)


查看完整回答
反对 回复 2023-09-22
  • 2 回答
  • 0 关注
  • 92 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信