将所有TLD请求转发到其他服务器

所以,紧急情况已经降落在我的腿上,不幸的是我没有足够的处理能力。 一家客户公司的IT技术改变了一个域名的Alogging,然后去度假。 他是唯一一个可以进入的人,在丛林中再次出现之前,没有办法改变它。

他应该只是指出www. 一个logging到一个新的IP,指向我们的服务器托pipemysite.com – 然而,他改变了* Alogging到新的IP – 这意味着所有的子域现在已经死亡( mail.exchange.secure.等) 。 最初的* Alogging指向另一个分开处理所有子域请求的服务器。

虽然我无法访问DNS控件,但是我可以完全访问DigitalOcean服务器和控制面板,以* Alogging现在指向的位置。

在DigitalOcean服务器上,我可以通过DNS控制面板(尽pipe看起来不那么一目了然)或通过virtual.conf文件(参见下文)来正确转发任何请求(即, mail.mysite.com )到正确的IP,然后应该正确处理请求?

作为参考,服务器是运行nginx的CentOS 6.5 x64。 当前处理传入请求的服务器块如下所示:

 server { listen 80; server_name mysite.com www.mysite.com; root /var/www/html/mysite.com/; error_page 403 404 500 502 503 504 = /server_error.php; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } 

谢谢你的帮助。 对TL的道歉; DR。

对于可能工作的HTTP,但对于HTTPS,服务器可能没有正确的证书,对于其他协议(例如电子邮件),HTTP服务将不会执行此任务。

也许在tcp模式下站起来HAProxy,监听连接端口并且代理到“真实”服务器上正确的端口? 对于某些服务,这可能不太合适,因为连接的明显来源将是HAProxy框。

更好的方法可能是访问DNS。 必须有一些机制可以用来访问帐户; 客户的公司中没有其他人与DNS提供商build立联系吗? 或者你可以重置这个人的电子邮件密码,然后发送密码重置电子邮件?

编辑

为了让HAProxy在这种情况下工作,您需要安装HAProxy – 这需要启用EPEL (如果尚未启用) 。 然后yum install haproxy

编辑/etc/haproxy/haproxy.cfg ; 不知道那里的默认configuration是什么样的,但是你需要首先清除任何listen部分,同时离开globaldefaults部分。

然后,对于需要发送到其他服务器的每个侦听端口,您需要这样的一个部分(请注意,如果添加端口80,则需要先停止nginx服务):

 listen port-443 bind :443 mode tcp balance roundrobin server realserver 192.0.2.1:443 

(其中192.0.2.1是应该处理连接的服务器的IP)。

另一种方法是调用DNS服务提供者,并向他们解释发生了什么。 我想一些“certificate”你是域名/代理或东西的所有者后,他们可能会给你访问或改变它…