通过目录重写所有请求

时间:2013-08-28 09:43:23

标签: regex apache .htaccess rewrite

我的网站www.example.com的文档根目录为public_html目录。但是,我的所有内容都托管在public_html/www.example.com/中。因此,我希望当用户访问我的网站时,他会从public_html/www.example.com/而不是public_html获取内容。那么,.htaccess重写规则应该是什么呢?

我不擅长重写规则,但我找到的最好的是:

RewriteRule !^blog blog%{REQUEST_URI}

这有两个问题。

  • 如果用户请求www.example.com/blog/
  • ,它将无法正常工作
  • 当我们将目录名称用作www.example.com
  • 时,它也不起作用

1 个答案:

答案 0 :(得分:1)

尝试一下,让我知道它是否适合您,如果它没有尽可能详细地描述会发生什么。

Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} !^/www\.example\.com [NC]
RewriteRule ^(.*)$ /www.example.com/$1 [NC,L]