我在检测URL中的单斜杠时遇到问题,我想要的URL是
http://sitename.com/username通过这个重写规则,我可以捕获用户名,但它也适用于不需要的前导斜杠。
RewriteRule ([A-Za-z0-9]+){0,1}$ index.php?c=profile&val=$1 [NC,L]
^
起始符号没有返回任何结果所以我已经删除了它,现在我在本地主机上测试所以我的测试url是
http://localhost/projectname/username
http://sitename.com/username
这是我完整的。htaccess
RewriteEngine On
RewriteBase /projectname/
RewriteCond $1 !^(maintainance'.php|index'.php|files|images|robots'.txt|css|js)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [PT,L]
RewriteRule ^([A-Za-z0-9]+){0,1}$ index.php?c=profile&val=$1 [NC,L]
谁能告诉我如何通过rewriteRule捕获单个斜杠用户名
任何帮助都将非常感激。
谢谢
请尝试使用下面的htaccess脚本。在val
中,您可以获得url值。通过/
爆炸,可以得到用户名。
RewriteEngine On
RewriteBase /projectname/
RewriteRule ^([A-Za-z0-9]+){0,1}$ index.php?c=profile&val=%{REQUEST_URI} [L,NC,QSA]