我在使用.htaccess和modrewrite方面是相当陌生的。
我有一个使用php的多租户网站,每个租户都可以将他购买的域名指向我的服务器ip后保存在应用数据库中。
现在,我正在尝试通过.htaccess编写重写规则,以便当用户在地址栏中键入其域(例如www.example.com)时,.htaccess会解析主机名并将其作为参数传递给索引页,这样对www.example.com所做的每个请求都将变成这样:/index.php?domain=www.example.com。
甚至将www.example.com/user变成/index.php?domain=www.example.com&url=user
如何使用.htaccess做到这一点?
谢谢您的帮助!
您可以在网站根目录.htaccess中使用此规则:
RewriteEngine On
RewriteCond %{QUERY_STRING} !domain= [NC]
RewriteRule ^(?:index\.php)?$ index.php?domain=%{HTTP_HOST} [L,QSA,NC]