我操作一个承载Wordpress的lighttpd网络服务器。由于可用性和市场的原因,我已经注册了一个新的领域,应该取代旧的网站结构是不变的。到目前为止,Wordpress的设置还可以,并且可以使用新的域。
现在,我想让指向旧URL的所有搜索引擎结果被我的Lighttpd服务器重定向到新的url:
www.olddomain.xy/path/somepage.html应该登陆www.newdomain.xy/path/somepage.html。
在这里和其他地方,我找到了一些解决方案,可以用https替换http,用www.domain.xy替换www.domain.xy,或者解决方案可以将任何页面从旧域重定向到新域的根目录,而忘记路径。但这不是我想要的。
我似乎无法理解(regex-)语法。有什么想法吗?
发布于 2017-09-07 18:01:32
这在某种程度上起了作用,并确保了重定向到https:
$SERVER["socket"] == ":80" {
$HTTP["host"] =~ "^www\.olddomain\.xyz" {
url.redirect = ( "^/(.*)" => "https://www.newdomain.eu/$1/" )
}
}
$SERVER["socket"] == ":443" {
$HTTP["host"] =~ "^www\.olddomain\.xyz" {
url.redirect = ( "^/(.*)" => "https://www.nwedomain.eu/$1/" )
}
}
rgds克里斯
发布于 2017-09-11 09:24:09
使用上面的解决方案,我试图通过谷歌的搜索控制台重新定位我的旧域名。然而,他们无法识别我的301设置。因此,我采用了完全不同的方式,将301和https重定向到Wordpress的index.php文件中:
<?php
//check called domain - subdomain never varies
$domnam = $_SERVER['SERVER_NAME'];
if ($domnam == "chriskrz.selfhost.bz") {
// permanent PHP-Redirect (Statuscode 301)
header("HTTP/1.1 301 Moved Permanently" );
// Redirection target
header("Location: HTTP://www.rustimation.eu" );
// to go sure an exit statement in case of errors
exit;
}
//force redirect to secure page
if($_SERVER['SERVER_PORT'] == '80')
{ header('Location: https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
exit();
}
这是谷歌所接受的,其工作方式与预期一致。
https://stackoverflow.com/questions/46005797
复制相似问题