2013-04-10 84 views
1

我是htaccess规则的新手。mod_rewrite使用.htaccess重写url php

我想要一个规则,将两个网址视为一个。

这两者应被视为同一个URL。我只想将sites/client1添加到实际上什么都不做的URL。每个URL请求都应该包含sites/client1 /。

对于像

  • multisite2 /的index.php?id_product = 1个&控制器=产品
  • multisite2 /站点/客户端1 /的index.php?id_product = 1个&控制器=产品
下一个请求

感谢您的帮助。

+0

http://domain.com/文件夹/多站点/网站/ client1/index.php应该被视为http://domain.com/folder/multisite/index.php – 2013-04-10 05:41:21

回答

1

试试这个:

RewriteRule index.php?(.*) sites/client1/index.php?$1

也请了一下周围搜索张贴在这里了。这个问题的一些可能的重复是这些:

.htaccess URL rewrite with one and two query string vars

htaccess url rewrite to .php

+0

嗨mtndesign,感谢您的帮助。 它现在实际上重定向到sites/client1/index.php。 我不想要这个,我只是想在URL中显示它。但内部它应该留在http://domain.com/folder/multisite/index.php 再次感谢 – 2013-04-10 06:01:39

+0

sites/client1 /只是虚拟参数 – 2013-04-10 06:16:22

+0

你的意思是你不想重定向用户,你只是想将'sites/client1/index.php'作为'index.php'来处理?那么你应该更新你的问题。作为解决方案,您应该使用'mod_proxy'。检查apache文档,并看看以下问题:[q1](http://stackoverflow.com/questions/5206201/why-redirect-keeps-changing-address-bar)[q2](http:// stackoverflow。 COM /问题/ 4645280 /重写的URL,而无需改变地址)。如果您需要任何代码,我可以提供给您。 – mtndesign 2013-04-10 06:33:14

1

这将在/网站/客户端1发送的所有请求/到/

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteRule ^sites/client1/(.*)$ $1 [L,QSA] 
</IfModule> 
+0

嗨silentboy,谢谢你的帮助。它现在实际上重定向到/的相同问题。简单地说,/ sites/client1 /应该保留在URL中,但在内部它应该调用domain.com/folder/multisite/index.php – 2013-04-10 06:13:06

+0

sites/client1 /只是虚拟参数 – 2013-04-10 06:16:55

+0

倾销这个想法.. – 2013-08-16 10:09:44