我遇到一个问题,即Google将两个不同网站的网页编入索引作为一个网站。
所以,我们有两个网站;我们称他们为siteone.com和sitetwo.com。当我进行“site:sitetwo.com”之类的搜索时,我会从www.sitetwo.com域获得一些SERP页面的结果,所有显示。
但是,部分结果实际上来自siteone.com。这些页面存在于siteone.com上,但不在sitetwo.com上。如果需要,他们会返回404.例如,结果中可能有一个页面,例如“http://www.sitetwo.com/foo/bar”,但该页面不存在且从未有过。页面“http://www.siteone.com/foo/bar确实存在。
这些网站位于同一服务器上,位于同一IP地址。 Sitetwo.com已经持续了大约一个星期。
Stack是:CentOS,NGINX,Node.js,MySQL。这些站点位于不同的目录中,运行独立的Node实例,虽然两个DB位于同一个MySQL服务器上,但它们是独立的DB。他们共享的唯一东西是服务器和IP。我已经包含了我的nginx.conf文件的一部分,因为这是IMO,我可能搞砸的最可能的地方。
server {
listen 80;
server_name siteone.com;
return 301 http://www.siteone.com$request_uri;
}
server {
listen 80;
server_name sitetwo.com;
return 301 http://www.sitetwo.com$request_uri;
}
server {
listen 80;
listen [::]:80;
server_name sitetwo.com www.sitetwo.com;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/\*.conf;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-NginX-Proxy true;
proxy_set_header X-Real-IP $remote_addr;
proxy_buffering off;
proxy_pass http://127.0.0.1:9002;
proxy_pass_header X-CSRF-TOKEN;
proxy_redirect off;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
server {
listen 80 default_server;
listen 443 ssl;
listen [::]:80 default_server;
server_name siteone.com www.siteone.com;
root /usr/share/nginx/html;
ssl_certificate /etc/ssl/nginx/www.siteone.com.crt;
ssl_certificate_key /etc/ssl/nginx/www.siteone.com.key;
# Load configuration files for the default server block.
include /etc/nginx/default.d/\*.conf;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-NginX-Proxy true;
proxy_set_header X-Real-IP $remote_addr;
proxy_buffering off;
proxy_pass http://127.0.0.1:9001;
proxy_pass_header X-CSRF-TOKEN;
proxy_redirect off;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
“include /etc/nginx/default.d/*.conf;”中的“\”并不是真的存在,但它影响了StackOverflow的格式化。