来自.htaccess的多个重定向 - 包括root,但排除子域

时间:2016-07-13 13:17:11

标签: apache .htaccess redirect mod-rewrite

我对.htaccess非常不熟悉,而且我已尝试在其他帖子中发布了很多解决方案,但我仍然陷入困境:

我有三个网站:

  • ronde-vormen.nl(公司网站)
  • rond.cool(用于短网址)
  • avenir.rond.cool(子域上的客户端站点)

在公司网站上,网址可能很长,例如http://ronde-vormen.nl/diensten/webdesign/

我想手动"创建"通过.htaccess缩短链接,例如:

rond.cool/web -> ronde-vormen.nl/diensten/webdesign

rond.cool/video -> ronde-vormen.nl/diensten/film-animatie

我也喜欢根目录重定向:

rond.cool -> ronde-vormen.nl

为实现这一目标,我在.htaccess中输入了以下内容:

<!-- OLD .htaccess -->

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule .* / [L]
</IfModule>

Redirect 302 / http://ronde-vormen.nl/
Redirect 302 /web http://ronde-vormen.nl/diensten/webdesign/
Redirect 302 /film http://ronde-vormen.nl/diensten/film-animatie/

当我创建子域时,麻烦就开始了。我尝试了不同的事情,结果如下:

  • 子域名也会重定向到公司网站
  • 子域名/网址也会重定向到公司网站上的网页设计页面
  • 我的自定义将所有指针重定向到公司网站根目录

目前,我的.htaccess看起来像这样:

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{HTTP_HOST} !=avenir.rond.cool [NC]
  RewriteRule .* / [L]

  Redirect 302 /film http://ronde-vormen.nl/diensten/film-animatie/
  Redirect 302 /web http://ronde-vormen.nl/diensten/webdesign/
</IfModule>

现在根目录没有重定向,并且当放置在子域名url之后也会重定向自定义路径。

我完全卡住了。非常感谢任何帮助......总而言之,我想:

  • 将rond.cool重定向到ronde-vormen.nl
  • 重定向自定义路径
  • 排除子域名完全重定向

0 个答案:

没有答案