Apache+Tomcat实现单机多网站部署

1 篇文章 0 订阅

原文链接:http://www.njuszy.cn/2018/06/14/apachetomcat%E5%AE%9E%E7%8E%B0%E5%8D%95%E6%9C%BA%E5%A4%9A%E7%BD%91%E7%AB%99%E9%83%A8%E7%BD%B2/

背景

手头有一台美团云的ubuntu服务器,目前在上面用wordpress+Apache搭了个个人网站->tinySky,快毕业了在学校呆着比较无聊,心血来潮想要搞个小程序玩玩,这就涉及到了在单机上部署多个网站的问题,解决方法也比较简单,利用Apache的虚拟站点功能就行。

目标拆解

  • 部署小程序的后台tomcat + Java
  • Apache配置中新增虚拟站点,将请求转发到tomcat
  • 为小程序站点添加ssl证书
  • 防火墙新增规则,禁止公网访问tomcat相应端口

解决步骤

部署小程序的后台tomcat + Java

采用的最基础的打war包上传方法,此处不表。

Apache配置中新增虚拟站点,将请求转发到tomcat

可参考(Ubuntu/Centos)apache多站点配置,很详细的一篇文章。

为小程序站点添加ssl证书

  1. 申请免费证书,我的域名是腾讯云买的,证书是一年有效期的那种。
  2. 更改Apache虚拟站点设置如下,我的文件名是minipro.conf
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so

LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
<VirtualHost *:443>
        ServerName miniprogram.njuszy.cn

        ServerAdmin webmaster@localhost

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl-cert/Apache/2_miniprogram.njuszy.cn.crt
        SSLCertificateKeyFile /etc/apache2/ssl-cert/Apache/3_miniprogram.njuszy.cn.key
        SSLCertificateChainFile /etc/apache2/ssl-cert/Apache/1_root_bundle.crt
        ProxyPass /lifehelper http://localhost:8080/lifehelper
        ProxyPassReverse /lifehelper http://localhost:8080/lifehelper
</VirtualHost>

因为小程序站点提供的都是Rest接口,因而没必要支持80端口,直接443就行。
3. 重启Apache。

禁止公网访问tomcat相应端口

ubuntu下利用ufw即可(开ufw时注意不要把22端口给禁了):

sudo ufw deny 8080
sudo ufw enable
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值