我已经使用Jhipster生成了我的应用程序。将其配置为在具有以下配置的Ubuntu 16.x和apache上的Amazon ec2上运行,并记录以下内容。当我点击该网站的网址时,它会映射并呈现该网站,而没有任何问题。
apache2配置
<VirtualHost *:80>
ServerName 111.22.33.444
ProxyPreserveHost On
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://111.22.33.444:8080/
ProxyPassReverse / http://111.22.33.444:8080/
</VirtualHost>
嵌套步骤,尝试配置SSL。我已经从godaddy购买了我的域的SSL,对其进行了配置,并将* .crt文件上传到/ etc / apache2 / ssl。我很快意识到,仅通过为端口443添加另一个虚拟主机配置就无法正常工作,因为JHipster应用程序在8080上运行。我回头查看了https://www.jhipster.tech/production/,他们给出了使用 HTTPS配置和SSL配置SSL的说明。前端代理,这让我迷路了,无法配置SSL并在https上提供我的域。
目前尚不清楚,我是否仍可以在8080上运行该应用程序,并且只需按照 HTTPS配置和前端代理的说明进行操作?首先,我使用以下命令
使用“让加密”配置apachesudo certbot --apache -d doamin.com --agree-tos -m info@domain.com --redirect
失败说
domain.com重定向失败
无法为domain.com设置增强重定向
没有用。
我需要对Jhipster应用程序进行哪些更改?它应该在443上运行还是继续运行8080并更新虚拟主机配置?我应该如何配置虚拟主机?
我没有说明就搜索了高位和低位。任何方向都非常感激。
答案 0 :(得分:0)
假设您的应用程序在http://127.0.0.1:8080/上可用,则可以按照以下步骤使用Certbot为HTTPS成功配置Apache。
设置服务器:
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache apache2
从配置开始:
<VirtualHost *:80>
ServerName example.com
ServerAlias example.com
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
ProxyPreserveHost On
ProxyRequests Off
</VirtualHost>
启用插件并重新启动Apache2,从而使该应用可以在上述配置的域中访问:
a2enmod headers proxy proxy_http
service apache2 restart
然后使用the instructions in the docs运行certbot:
sudo certbot --apache -d example.com
之后,您的应用将可以在您通过HTTPS配置并提供服务的域上访问。