所以,我有一个域名,suputamadre.es
我启动了一个google云实例并为其分配了一个IP,比如1.2.3.4
我启动了django服务器来监听0.0.0.0:80
我试着用铬连接到http://1.2.3.4或http://1.2.3.4:80上,这样就可以了。太棒了。
在Google (从GoDaddy购买的域名,因此将名称服务器指向Google )上设置我的域名
设置指向1.2.3.4的A记录suputamadre.es
转到cmd并执行ping suputamadre.es返回1.2.3.4
在浏览器中写入suputamadre.es会返回一个连接拒绝的错误,但是suputamadre.es:80可以工作。为什么会这样呢?我如何才能将这个域指向我的服务器?试着做个CNAME,也没起作用.
在主题上,是否有任何方法将其指向两个服务器:80和:443,以支持SSL而不运行两个并发服务器?或者,考虑到SRV在浏览器中不工作,甚至可以将域指向1.2.3.4:8000,而不必使用重定向?
谢谢一堆。我已经被困在这上面两天了,不管我想用谷歌做什么,似乎都不适合我。更别提如果我在google上搜索"DNS A寄存器“谷歌认为我说的是一个寄存器..。
发布于 2020-01-16 20:05:14
看来你的问题已经部分解决了。如果我将http://suputamadre.es放入浏览器中,我可以看到您的"Django安装完成“页面,因此这似乎是可行的。
关于:80 vs :443 SSL问题,这通常是通过端口80上的重定向来完成的。IE: web服务器在端口80上接收到的http://suputamadre.es中的用户类型,然后web服务器将重定向发送回https://suputamadre.es (默认情况下在端口443上服务,浏览器无需指定就可以使用该端口)。这样,所有流量都通过https在443端口服务。任何到端口80的内容都重定向到端口443。
发布于 2020-01-16 21:42:26
正如DrewZa所指出的,您可以将nginx用于这些目的。这是一个很好的轻量级网络服务器。看这里:
至于由80至443的港口货运:
在nginx.conf文件中创建一个服务器条目,您可以执行以下操作:
server {
listen 80;
server_name suputamadre.es;
proxy_set_header X-Real-IP $remote_addr;
location / {
rewrite ^ https://$host$uri permanent;
}
}这将将所有请求从80重定向到443。
https://serverfault.com/questions/999267
复制相似问题