我正在尝试配置我的第一个 https,我想我明白了,但是有一个问题:该网站无法在 http 中打开,只能在 https 中打开,因此,我想将所有内容重定向到 https。
我正在使用 iptables,这是我的规则:
这是我的网站:https://pubcrawlsp.com
有人能给我点灯吗?
我已经尝试使用:
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 443
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 443
我正在使用来自亚马逊网络服务的 EC2 实例。[Ubuntu]
答案1
您不需要为此使用防火墙,使用 apache 进行重定向
<VirtualHost *:80> ServerName www.example.com
Redirect / https://www.example.com/
</VirtualHost >
<VirtualHost *:443> ServerName www.example.com
# ... SSL configuration goes here
</VirtualHost >
答案2
用户可能不希望端口 80 使用 HTTPS,因此使用 Apache 或 node.js 的 HTTP 重定向至少会更为常规。
在回答你关于 iptables 转发的直接问题时,你可以看看如果你尝试
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 54.207.73.169:443
(或者您想要使用的任何 IP 地址。如果服务器绑定到它,那么 Localhost 应该没问题。)