我在一个网站上工作,这是一个旅游博客,还有子标签mytravelsite.com/tickets
,这是白色标签,mytravelsite.com/tickets/fares
和其他页面下的所有内容都指向另一个IP,这很好。
但现在我想切换,现在主要网站是mytravelsite.com
,这将是来自mytravelsite.com/tickets
的whitelabel,但没有/tickets
在网址但仍然保持我的博客所以另一个麻烦是whitelabel没有robots.txt
所以这我将不得不服务于我的托管。
所以最后我主持10.1.1.1
ip和whitelabel解析为10.10.10.10
ip
我需要的是:
所有在mytravelsite.com/blog
下解决我的托管和我的托管网站10.1.1.1
以及mytravelsite.com/robots.txt
和mytravelsite.com/sitemap.xml
解决我在10.1.1.1
的托管
以及在10.10.10.10
解决whitelabel的其他一切
我猜这可以通过一些dns设置或nginx代理或重写规则来完成,但我在互联网上搜索过去2天的所有内容都以失败告终。
DNS仅考虑名称,即斜杠之前的部分。你总是mytravelsite.com
,所以这不能完全在DNS中完成。
我知道这不是一个真实/完整的答案。
我会尝试使用代理解决它。
包含的片段不是nginx
的配置,而是apache
的配置,因为我现在没有类似的nginx
设置。但我相信它可能是有用的起点。
<VirtualHost 10.10.10.10:80>
ServerName mytravelsite.com
ProxyPreserveHost On
ProxyPass /blog/ http://10.1.1.1/ retry=1 timeout=600 keepalive=On
ProxyPassReverse /blog/ http://10.1.1.1/
ProxyPass /robots.txt http://10.1.1.1/ retry=1 timeout=600 keepalive=On
ProxyPassReverse /robots.txt http://10.1.1.1/
ProxyPass /sitemap.xml http://10.1.1.1/ retry=1 timeout=600 keepalive=On
ProxyPassReverse /sitemap.xml http://10.1.1.1/
</VirtualHost>
笔记:
10.*.*.*
是一个仅限本地的网络,因此virtualhost标头中的10.10.10.10
仅用于说明应该放置哪个服务器。