http://localhost/clean_urls/user/whtffgh
很好地重定向到这个http://localhost/clean_urls/user/whtffgh/
(我放在那里的几乎所有东西都有效)。
http://localhost/clean_urls/user/cohen
但是,重定向到这个
http://localhost/clean/
,我不知道为什么。它应该只添加一个/
这是我的 .htaccess 代码
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ /clean_urls/user/$1/ [L,R=301]
RewriteBase /clean_urls/user/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]+)/$ index.php?user=$1
</ifModule>
更新:
除了我将 cohen 作为用户名之外,该代码还有效。.htaccess 文件的第二部分user/index.php?user=username
看起来像user/username
这样,它只是一个 $_GET 变量,在 url 中看起来不错并且对 SEO 友好(显然)。
我只是在学习这些东西并制作一个 webapp 来试用它,所以不确定它的去向,但我确实认为我最终需要另一个变量。http:://localhost/clean_urls/user/fred/someverb