我有一个在线项目,它在两个不同的领域,1)www.example.com和2)www.example.co.in。现在,我想重定向
www.example.co.in/category/至
www.example.com/ceramic+industry/我想通过服务器通过.htaccess 或重定向它。我试过从服务器上重定向域名而不是目录,也尝试从.htaccess中重定向域,或者只有当域和目录结合时才能重定向。我在php的项目。因此,如果在php中也有可能,您可以给出建议。
发布于 2015-10-23 06:32:11
在.htaccess中添加以下规则(放置在网站www.example.co.in的根目录下):
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^category/(.*)$ http://www.example.com/ceramic+industry/$1 [L,R=301]或者使用302进行临时重定向。
如果您还想将整个.co.in网站重定向到.com,那么添加下一行(请记住,在.com网站的.htaccess中,这两条规则不应该存在)。
RewriteRule ^category/(.*)$ http://www.example.com/ceramic+industry/$1 [L,R=301]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]如果由于任何原因,您必须在两个站点上使用相同的.htaccess,那么请使用这样的条件:
RewriteCond %{HTTP_HOST} !^www.example.com$ [NC]
RewriteRule ^category/(.*)$ http://www.example.com/ceramic+industry/$1 [L,R=301]
RewriteCond %{HTTP_HOST} !^www.example.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]============================================================
另一个查询的解决方案:
这可以通过PHP来完成。正如我所猜测的,在category/被一个PHP页面处理之后,所有的URL。
在PHP页面代码中,以下代码位于顶部:
if(isset($_GET['company'])){
$company=$_GET['company'];
$companyNew=str_replace('_','+',$company);
if($company!=$companyNew){
header("location:/category/?company="+$companyNew,true,301);
//header("location:/ceramic+industry/?company="+$companyNew,true,301);
exit;
}
}发布于 2015-10-23 06:32:07
你可以试试这个:
RewriteCond %{HTTP_HOST} ^your.first.domain$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)$ http://your.second.domain/$1 [R,L]如果请求包含现有目录名,这将重定向。
回答你的评论。你可以试试这个:
RewriteCond %{ENV:REDIRECT_FINISH} !^$
RewriteRule ^ - [L]
RewriteCond %{QUERY_STRING} ^company=(.*)\_(.*)$
RewriteRule ^(.*)$ /$1?company=%1+%2 [R,L,E=FINISH:1]前两行允许您防止无限循环重定向。
https://stackoverflow.com/questions/33295898
复制相似问题