gpt4 book ai didi

apache - 尾随斜杠导致错误代码 500

转载 作者:行者123 更新时间:2023-12-04 05:49:31 24 4
gpt4 key购买 nike

我有这个 htaccess脚本

Options -Indexes
Options +FollowSymlinks

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ /$1.php [L,QSA]

所以我可以访问像 example.com/test 这样的页面但是当我尝试去 example.com/test/ 时它会引发 500 错误。有人能告诉我需要改变什么才能让它工作吗?可能是一个愚蠢的错误。

最佳答案

^(.+)$ 更改模式到将单独处理尾随斜杠的一个:^(.*[^/])/?$

Options -Indexes +FollowSymlinks

RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])/?$ /$1.php [L,QSA]

这适用于 /test/test/ -- 两者都将被重写为 /test.php .

如果您想要不同的行为,请使用 /test工作但有“404 Not Found”错误 /test/ (而不是愚蠢的“500 服务器端”错误)你可以使用这个:
Options -Indexes +FollowSymlinks

RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.+)$ $1.php [L]

上面的规则将在进行重写之前检查目标文件是否存在.. 所以如果 /test.php不存在,不会发生重写。

关于apache - 尾随斜杠导致错误代码 500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10245542/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com