我环顾四周,似乎没有人遇到和我一样的问题。
我用过:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yoursite.com [NC]
RewriteRule ^(.*)$ http://www.yoursite.com/$1 [R=301,L]
但是当我导航到yoursite.com
时,我会被带到www.yoursite.com/public_html
并且不存在。
这是我的目录结构:
/
| .htaccess
|
| public_html
|
|index.php
答案 0 :(得分:2)
尝试使用此行:
RewriteCond %{HTTP_HOST} !^www\.yoursite\.com$ [NC]
Gumbo in his answer (how to force “www.” in a generic way?)推荐了这种结构:
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
答案 1 :(得分:0)
您需要做的就是将.htaccess
文件移至public_html
文件夹。