如何从地址中删除该点

时间:2014-07-26 17:53:38

标签: apache .htaccess

请帮助解决问题。

有一个网站。这是他的.htaccess:

<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine On

  # Сначала внешний редирект, который поправит "." и "www" 
  # если в этом есть необходимость
  RewriteCond %{HTTP_HOST} !^www\. [OR]
  RewriteCond %{HTTP_HOST} \.$
  RewriteRule ^(.*)$ http://www.avroraprint.ru/$1 [R=301,L]

  # И уже на запросе с поправленным хостом начинает работать
  # перенаправление от CMS
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]  
</IfModule>

问题在于以下地址:

www.avroraprint.ru./about/guest-reviews/ 
www.avroraprint.ru. 
www.avroraprint.ru.. 

但是“ru”之后的那一点不应该。即地址应仅允许如下:

www.avroraprint.ru/about/guest-reviews/ 
www.avroraprint.ru 
www.avroraprint.ru

1 个答案:

答案 0 :(得分:0)

您的第一个301规则似乎有问题,并会导致无限重定向循环。

将该规则更改为:

 RewriteCond %{HTTP_HOST} !^www\. [NC]
 RewriteRule ^(.*)$ http://www.avroraprint.ru/$1 [R=301,L,NE]