如何在htaccess链接中使用PERIOD?

时间:2016-11-04 16:58:16

标签: php .htaccess

我试图创建一个这样的链接:website.com/profile/name
来自: website.com/profile.php?name=Name
一切正常,除非我使用带有点的名称。例如:website.com/profile/Alex。 这不会起作用,只会从链接中删除点。所以基本上它不会在php中显示DOT。

这是我的htaccess代码。

RewriteEngine On

ErrorDocument 404 /alliance/404.php

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^([^/.]+)\.php - [F,L,R=404]

RewriteRule ^([^/.]+)$ $1.php [L]

RewriteRule ^profile/([^/.]+)$ ./profile.php?name=$1

1 个答案:

答案 0 :(得分:0)

([^/.]+)表示除./之外的任何字符,因此与alex.不匹配。如果您希望规则在uri中接受.,请将规则模式更改为以下内容:

RewriteRule ^profile/([^/]+)$ ./profile.php?name=$1