2012-05-04 55 views
5

我想要做的就是将www.exaple.hu中的url重写为www.exaple.cz/hu。因此,在地址www.exaple.cz/hu中显示来自地址www.exaple.hu的内容。htaccess重写无重定向

因此,当用户类型www.exaple.cz/hu,用户是不重定向到www.exaple.hu但从www.exaple.hu内容按域www.exaple.cz/hu显示(因此在地址栏是www.exaple.cz/hu)。

回答

6

你需要在你的Apache配置中启用mod_proxy。一旦mod_proxy的启用,启用了mod_rewrite并通过httpd.conf的.htaccess,然后把这个代码在你.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} ^www\.exaple\.cz$ [NC] 
RewriteRule ^(hu)/?$ http://www.exaple.$1 [L,P,NC] 
+0

好的,也许我的解释不好;)所以当用户输入www.exaple.cz/hu时,用户被重定向到www.exaple.hu,但在地址栏中仍然有www.exaple.cz/hu不是www。 exaple.hu。 – born2fr4g

+0

你的解释是正确的,我的回答也是正确的:)我的回答确实是确保浏览器中的URL保持'www.exaple.cz/hu',而来自'www.exaple.hu'的内容被服务(使用mod_proxy)。 – anubhava

+0

我想感谢你的帮助;)。顺便说一句 - 你知道任何有关Apache和mod重写的教程或其他学习资料的好网站吗?因为,例如我不知道这些标志[NC] [L,P,NC]是什么意思(你称它为标志还是我错了?))。反正 - 再次thx寻求帮助。 – born2fr4g

2

www.exaple.cz/hu和www.exaple.hu的文件是否在同一台服务器上?

如果是,我会创建一个符号链接,以便www.exaple.cz/hu内容目录指向www.exaple.hu内容目录。

例如,如果服务器A具有directores:

  • 的/ var/www/html等/ A,其包括文件:www.exaple.cz/hu
  • /无功/网络/ HTML/B,其包括文件:www.exaple.hu

CD的/ var/www/html等/

LN -s在/ var/www/html等/ BA

这样,你只有一个源,但链接方式来源。

如果这两个URL指向两个diff服务器,您可以尝试安装这两个并使用slink Or ..在www.exaple.cz/hu中包含“www.exaple.hu”作为框架?

1

如果文件是在同一台服务器上,你可能会删除附加域( cpanel)并重新添加域,但是这次选择其他域的工作目录。

如果您的站点的链接结构是这样的:

<a href="/path/page">Link</a> 

现在你可以使用新的网站没有任何问题。