我发现了许多类似的问题,人们在询问如何在不同的端口(80/443除外)上安装SSL,即1234
端口。然而,所有的答案都类似于use redirection
、proxying requests
、dns-validation (instead of http)
或使用替代方法。然而,在任何地方你都找不到一个StackExchange方式的答案,我的意思是,对于新手来说,一步一步的,如何做到这一点。
然而,请注意,重定向并不是解决方案,因为在80/443上,一个人可能有一个正常的网站,但在1234端口上,一个完全不同的应用程序。所以,只要从1234
“重定向”到80
,就会把网站搞砸,对吧?
发布于 2020-11-06 13:26:00
只为HTTP-01挑战在端口80上使用Nginx,然后在另一个web应用程序甚至其他服务器软件上使用它创建的证书,这是非常好的。它不需要执行任何反向代理来为http://example.com/.well-known/acme-challenge/
服务。
server {
listen 80;
server_name example.com;
location /.well-known/acme-challenge/ {
alias /var/www/letsencrypt/.well-known/acme-challenge/;
}
location / {
return 404;
}
}
此外,您不一定需要一个监听端口80的web服务器,因为Certbot可以使用它自己的内置web服务器来处理这些挑战:
sudo certbot certonly --standalone --preferred-challenges http -d example.com
发布于 2021-03-24 19:23:54
为了扩展@Esa的好答案,下面是我为Apache所做的具体步骤:
/etc/apache2/ports.conf
并将80
或443
更改为您想要的任何端口/sites-available/example.com
中,将VirtualHost更改为所需的端口。请确保存在SSL文件路径的命令(由certbot安装产生)systemctl restart apache2
附注:需要WordPress的人要确保重定向不会重定向到旧端口。在WP Dashboard>Settings中更改它之前,可以在“WP-config”中设置它:
define('WP_SITEURL','https://example.com:1234/');
define('WP_HOME','https://example.com:1234/');
https://serverfault.com/questions/1041509
复制相似问题