我一直有一个小问题,我有一个简短的URL系统可以像这样使用:
domain.com/KeiBf3
那就是
domain.com/url.php?u=KeiBf3
然而我还有其他的东西,比如
domain.com/file.ext
我一直在添加内容,但由于我的正则表达式是以某种方式进行的,所以任何东西(例如file.ext)都被调用:
domain.com/url.php?u=file.ext
我的临时解决方案是为我使用的每个文件手动添加url重写规则,让它们通过而不是调用主重定向。我似乎无法解决这个问题,可能限制任何有“。”的问题。其中的角色,让它通过,这是我目前的重写规则,任何人都可以帮助我吗?
"^/([a-zA-Z0-9]+)" => "/url.php?u=$1"
我正试图这样做,所以这也不会抓住“。”字符,并在URL的末尾添加结尾“/”,可选。
答案 0 :(得分:0)
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此规则:
RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)/?$ /url.php?u=$1 [L,QSA]