【百度 bug?】旧站收录的域名,绑定新站,换站逻辑错误?
【bug】
√网站改版+重定向虽然实现了百度以前收录www.xx.com/thread-1-1-1.html变成了old.xx.com/thread-1-1-1.html,
x 但是做完重定向 www.xx.com绑定的新程序,我所有网站访问就都变成了 old.xx.com
【想实现】
1:旧站百度收录的类似www.xx.com/thread-1-1-1.html 可定向到 old.xx.com同时
2:新站发帖类似于www.xx.com/thread-1-1-1.html 可以访问,而不是做完 301 定向后变成了old.xx.com/thread-1-1-1.html
你自己重定向逻辑的错误,建议就不要在这里阐述不符合逻辑的想当然了。 这个问题涉及到网站改版后的域名重定向和内容访问逻辑。你希望实现的是:
1. 旧站百度收录的链接(如 `www.xx.com/thread-1-1-1.html`)能够通过 301 重定向到 `old.xx.com/thread-1-1-1.html`。
2. 新站的链接(如 `www.xx.com/thread-1-1-1.html`)能够正常访问,而不是被重定向到 `old.xx.com`。
### 解决方案
要实现这个需求,你需要通过服务器配置(如 Nginx 或 Apache)来实现条件重定向。具体来说,你需要根据请求的 URL 路径来判断是否需要进行重定向。
#### 1. Nginx 配置示例
假设你使用的是 Nginx,你可以通过以下配置来实现:
server {
listen 80;
server_name www.xx.com;
# 旧站链接重定向到 old.xx.com
location ~ ^/thread-1-1-1.html$ {
return 301 http://old.xx.com$request_uri;
}
# 其他请求正常访问新站
location / {
proxy_pass http://new_site_backend;# 新站的后端地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
server {
listen 80;
server_name old.xx.com;
# 旧站的处理逻辑
location / {
proxy_pass http://old_site_backend;# 旧站的后端地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
#### 2. Apache 配置示例
如果你使用的是 Apache,可以通过 `.htaccess` 文件来实现:
RewriteEngine On
# 旧站链接重定向到 old.xx.com
RewriteCond %{REQUEST_URI} ^/thread-1-1-1.html$
RewriteRule ^(.*)$ http://old.xx.com/$1
# 其他请求正常访问新站
RewriteCond %{REQUEST_URI} !^/thread-1-1-1.html$
RewriteRule ^(.*)$ http://new_site_backend/$1
### 解释
- **Nginx 配置**:
- 第一个 `server` 块处理 `www.xx.com` 的请求。
- `location ~ ^/thread-1-1-1.html$` 匹配旧站的特定链接,并将其重定向到 `old.xx.com`。
- 其他请求则通过 `proxy_pass` 转发到新站的后端。
- **Apache 配置**:
- `RewriteCond` 和 `RewriteRule` 用于匹配旧站的特定链接,并将其重定向到 `old.xx.com`。
- 其他请求则通过 `P` 标志(代理)转发到新站的后端。
### 注意事项
1. **正则表达式**:你需要根据实际情况调整正则表达式,确保只匹配旧站的特定链接。
2. **缓存**:在测试时,确保清除浏览器缓存或使用无痕模式,以避免缓存影响测试结果。
3. **测试**:在生产环境应用之前,建议在测试环境中充分测试,确保重定向逻辑正确无误。
通过这种方式,你可以实现旧站链接的 301 重定向,同时确保新站的链接能够正常访问。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页:
[1]