apache - 如何使用 Apache 为 Wildly 项目实现代理?
问题描述
我已经使用 JSF 实现了一个 JavaEE 项目并部署到我的本地 Wildly 服务器中。现在我完全没问题,我可以通过输入http://localhost:8080/gestionale/使用任何浏览器访问它。现在我想将项目移动到 Linux 机器上的云中。这个想法是使用 Let's Encrypt 使用 SSL/TLS 设置 Apache 以加密所有数据,但我不知道如何在 Apache 服务器配置中实现这一点。这可以工作吗?
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName mydomain.com
ServerAlias www.mydomain.com
ProxyPass / http://127.0.0.1:8080/gestionale/
ProxyPassReverse / http://127.0.0.1:8080/gestionale/
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile fullchain.pem
SSLCertificateKeyFile privkey.pem
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>
</VirtualHost>
</IfModule>
想法是直接使用 mydomain.com 访问 JSF 项目:这可能吗?交换的所有数据是否都受到 TLS/SSL 的保护?
解决方案
从未加密开始,让您的生活更轻松。基本配置是:
<VirtualHost *:80>
ServerName www.mydomain.tld
ProxyPreserveHost on
ProxyPass / http://127.0.0.1:8080/gestionale/
ProxyTimeout 360
</VirtualHost>
然后,安装Certbot并运行说明告诉您的内容。例如,在 Ubuntu 上你会运行:
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get install certbot python-certbot-apache
sudo certbot --apache
Certbot 将为您更新您的 Apache SSL 配置。它还会询问您是否要设置从 HTTP 到 HTTPS 的重定向(通常是个好主意)。
确保您的域名在 DNS 中正确解析,否则您将无法正确运行 certbot。这就是 HTTP 的优势,它只在最初验证所有设置是否正确。
推荐阅读
- elasticsearch - Elasticsearch在某个时间间隔内批量导出文档
- r - R在按值排序时将列名连接到新列中
- javascript - 是否有任何改进 Javascript 中的异步映射(和其他迭代)的建议?
- python - 用于group_by + mutate +索引R中mutate内的列向量的等效python和pandas操作
- java - 自定义 Textview 不能在 android studio 3.6 中预览
- java - 插入 SQLite 数据库 - Android
- javascript - MongoDB和Javascript我如何访问对象数组并匹配特定键
- powerbi - SQL 标量函数值转换为 power bi 表
- python - 两个时间值之间的 pandas 数据帧中的行
- javascript - 如何修复无参数重新分配