如何将旧网址重定向到新网址到新服务器

时间:2016-01-22 18:23:54

标签: php .htaccess redirect

我将网站移动到新服务器,我的重定向问题。问题是域名是相同的但网址是新的。我想逐个重定向旧网站最常用的页面。我举个例子:

http://www.gamosorganosi.gr/cgi-bin/sstyle3.cgi?kod_sel=519(旧的)

http://www.gamosorganosi.gr/gamos/nifika/10/Sposa-Moda(新服务器的新服务器)

我尝试重定向301和rewriteRule,但它没有用。所有这些都放在新网站.htacces文件中。

我一直得到的信息是:

  

未找到

     

在此服务器上找不到请求的URL /cgi-bin/sstyle3.cgi。

在标题上我看到了旧网站的404标题。

最后一条信息:旧网站仍在线使用新域名www.gamos-organosi.gr

我如何重定向它们?我应该将重定向放在旧站点吗?

2 个答案:

答案 0 :(得分:0)

重定向从旧URL开始,因此必须在配置中遵循趋势。由于您正在处理相同的域,因此规则非常简单。

将.htaccess放在您的文档根目录并添加以下行:

RewriteRule ^cgi-bin/sstyle3\.cgi\?kod_sel\=519$ http://www.gamosorganosi.gr/gamos/nifika/10/Sposa-Moda [R=301,L]

或者为了更快的速度,在httpd.conf(apache配置文件)中编辑www.gamosorganosi.gr的虚拟主机部分并插入:

<directory "/path/to/document_root">
RewriteRule ^cgi-bin/sstyle3\.cgi\?kod_sel\=519$ http://www.gamosorganosi.gr/gamos/nifika/10/Sposa-Moda [R=301,L]
</directory>

第二个想法确实需要重新启动服务器,但如果/path/to/document_root替换为文档根目录的真实路径,它确实有效。

P.S。只需确保转义正则表达式引擎使用的特殊字符,例如问号和句点。

答案 1 :(得分:0)

这将是最好的方式:

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^folder1.*$ http://example.com/folder2/ [R=301,L]

在同一域中的含义使用子目录然后转发到实际 你正在重定向的网址。

[R=301,L]至关重要 - 因为它告诉搜索引擎也会重定向到代码301L,这意味着此指定重定向的最后一条规则。