我在google和stackoverflow中搜索了很多,但没有找到完整的答案......
我想做的是:
1)将所有非扩展地址重定向到其页面。例如:home - > home.php
2)将用户名重定向到搜索用户名的页面(如果存在),然后加载另一个页面。例如:www.example.com/michael将重定向到go.php并获取“michael”并且如果用户存在;转到user.php?id = michael
它完全像facebook和twitter!如果您键入“home”,它会转到主页,如果您输入用户名,则会转到您的个人资料!
我怎么能这样做?
编辑:或者可能是.htaccess在第一个斜杠之后向页面发送任何内容。例如:
www.example.com/this/is/test
将是:
www.example.com/index.php?var1=this&var2=is&var3=test
然后index.php页面将决定做什么......
答案 0 :(得分:1)
你可以试试这个:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/([^/]+)?/?([^/]+)?/?([^/]+)?/? [NC]
RewriteRule .* index.php?var1=%1&var2=%2&var3=%3 [L]
无声地映射
http://www.example.com/this/is/test
要
http://www.example.com/index.php?var1=this&var2=is&var3=test
所有参数均为可选参数,最多为3个。
如果需要更多内容,请为
右端的每个添加([^/]+)?/?
RewriteCond %{REQUEST_URI}
将相应的键(varN
)添加到RewriteRule中的index.php查询中,使用%N
来引用它们。