0

我是 htaccess 的新手,我一整天都在研究它。请帮忙。我只是想:

  1. www.example.com 被重定向到 example.com/hu
  2. example.com 被重定向到 example.com/hu

这是我从typo3网站复制的htaccess文件:

<FilesMatch "\.(js|css)$">
  <IfModule mod_expires.c>
    ExpiresActive on
    ExpiresDefault "access plus 7 days"
  </IfModule>
  FileETag MTime Size
</FilesMatch>


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)\.(\d+)\.(php|js|css|png|jpg|gif|gzip)$ $1.$3 [L]
RewriteRule ^typo3$ typo3/index_re.php [L]




RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php [L]

</IfModule>


RewriteCond %{HTTP_HOST} !^dnaplus-humangenetikaicentrum\.com$
RewriteRule ^(.*)$ http://dnaplus-humangenetikaicentrum.com/hu/$1 [L,R=301]

它将 www.example.com 重定向到 www.example.com/hu。但不适用于 example.com。

4

1 回答 1

0

试试这个

# if hostname starts with "www"...
RewriteCond %{HTTP_HOST} ^www\.(.+)$    #here we get rest of URI as %1

# ...redirect permanently to hostname whitout "www":
RewriteRule (.*) http://%1/$1 [R=301,L]


# if client requested root directory:
RewriteCond %{REQUEST_URI} ^/$

# redirect him to start page:
RewriteRule .* hu [R=307,L]

我建议使用完全临时重定向 (307) 来启动页面。301 状态被浏览器硬缓存,所以如果您稍后更改起始页,一些用户仍会被重定向到旧页面。

于 2013-06-25T08:14:15.603 回答