【发布时间】:2021-11-07 16:43:48
【问题描述】:
今天早些时候,当人们使用 .htaccess 访问我的网站时,我试图删除 php 文件扩展名。 (有点像https://tecadmin.net/remove-file-extension-from-url-using-htaccess/)
以下是我的.htaccess 文件:
#Remove php file extensions
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteEngine on
RewriteCond %{THE_REQUEST} /([^.]+)\.php [NC]
RewriteRule ^ /%1 [NC,L,R]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [NC,L]
代码似乎在发挥作用,但我很快发现了一个问题。 http://example.com/page 和 http://example.com/page.php 工作得很好,但是当我访问 http://example.com/page/ 时,服务器返回一个内部服务器错误。 (500)
我尝试在网上查找如何解决此问题,但结果一无所获。有谁知道如何解决这个问题?
【问题讨论】:
-
Bitnami 工程师在这里。如果您收到 500 错误代码,您可以从 Apache 的日志 (/opt/bitnami/apache2/logs/error_log) 中获得更多信息,您可以编辑您的消息并包含该信息吗?
-
在请求
/page/(带有斜杠)时,您希望看到什么响应?正确的响应可以说是 404,尽管您可以选择使用外部重定向删除尾部斜杠?
标签: apache .htaccess lamp bitnami