我知道下面的代码
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
每次访问一个没有 www 的 url 时,用于将 www 添加到 HTTP 主机。
同样的代码
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
用于在 url 变量的值中将 url 中的所有内容发布到 index.php。无需像第一个示例中那样更改 URL(将 url 从不带 www 更改为带 www)。
我想要的有点棘手。
我想如果没有 www 那么应该执行第一个示例步骤。
如果有 www 或任何其他文本,例如 forum.site.com 或 blog.site.com 或 www.site.com,那么就像在第二个示例中一样,它应该默默地指向同名的文件夹。
例如 如果是 www,它应该重写到www/
变量后面的文件夹。
像访问者类型 www.site.com 它应该从 www/ 文件夹加载文件,如果访问者类型 www.site.com/index.php?pid=1 那么它应该与index.php?pid=1
数据一起被重写到 www/ 文件夹
除了 www 之外的任何东西都应该如此。比如fourm.site.com/index.php?blah=blahBlah等。
希望我不会混淆,也不会违反规则。