我想将所有请求重定向到,即使不是www
www.site.com/public
但在URL中隐藏"public"。
此代码处理www部分
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www'. [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=302,L]
并且这重定向到/public
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
我如何将它们组合在一起?
您是否可以访问VirtualHost?如果是,则可以设置DocumentRoot
。
像这样的
<VirtualHost *:80>
DocumentRoot "path/to/public"
....
</VirtualHost>
你不需要用.htaccess来做这件事。它是一种更干净的解决方案。