有人可以帮我解决Apache的以下重写问题 我希望结果如下:
domain.com/(DB用户名所属的登陆搜索页面)
domain.com/db1/(对于db1的索引登录页面,其中db1可以是任何其他数据库名称)
domain.com/db1/accounts/(登录后)
domain.com/db1/admin/(登录后的另一个页面)
如果有可能,请帮我url re-write
......
我有类似的东西,但它不起作用:
`Options + FollowSymLinks
上的RewriteEngine
RewriteRule /(.*)/$ /index.php?dbname=$1
RewriteRule /(.*)/account/$ /account.php?dbname=$1 `
谢谢
此致 约翰
答案 0 :(得分:1)
避免重写对/
的调用只需在索引或任何其他页面中显示登录表单。
然后
这个块告诉服务器允许重写,坚持使用现有文件和目录,只重写不存在"存在",并且你将从/
重写RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
那么你的规则
RewriteRule ^db([0-9]+)$ index.php?dbname=$1&%{QUERY_STRING} [L]
RewriteRule ^db([0-9]+)/account$ index.php?admin=$1&%{QUERY_STRING} [L]
RewriteRule ^db([0-9]+)/admin$ index.php?admin=$1&%{QUERY_STRING} [L]
这是假设您在登录后将他送到
https://www.yoursite.com/db1
https://www.yoursite.com/db1/account
https://www.yoursite.com/db1/admin
例如