服务器篇

PublicCMS部署在了阿里云服务器共享型服务器上,1核CPU,2G内存,2M带宽,40G硬盘,公网IP地址:47.94.206.29

1.jpg

该类服务器性能不是很高,且在双十一等节点会更加低下,不过PublicCMS官网每天不超过一万pv,且网站做了静态化,只有搜索和部分动态页面消耗资源,服务器运行十分稳定,相信即使到10万pv 也只需要增加一些带宽

2.jpg

MySQL数据库与CMS都部署在这台服务器上,CMS的内存占用一般不超过500M,实际使用内存在300M左右浮动

3.jpg

域名篇

publiccms主要有www.publiccms.com publiccms.com search.publiccms.com cms.publiccms.com download.publiccms.com 几个域名解析

4.jpg

其中www.publiccms.com publiccms.com指向了数据目录的web目录,即为静态文件

5.jpg

download.publiccms.com域名作为cdn域名

image.png

download.publiccms.com的https配置是在cdn完成的,回源请求走的是http


image.png

在CMS的最新开发分支中,我们增加了cdn和oss支持,在维护->站点配置->oss中配置cdn地址后,${getUrl("assign/images/logo.png")} 或者内容的封面图、编辑器里面上传的图片等地址都将变为cdn前缀的路径

image.png

除了download.publiccms.com用作cdn回源域名外,其他域名的http请求都强制跳转到了https

6.jpg

cms.publiccms.com search.publiccms.com都反向代理到了cms服务

image.png

search.publiccms.com这个域名通过配置模板根目录指向了cms的搜索模板目录

image.png

部署配置篇

服务器对外提供服务的程序是nginx,动态请求由运行在tomcat里的cms处理

image.png

nginx配置在域名篇已经介绍的比较详细,下面是cms的upstream配置

image.png

tomcat配置在其官方配置基础上主要有以下修改:

在conf/server.xml配置文件的Host标签中,增加了一行

<Valve className="org.apache.catalina.valves.RemoteIpValve" protocolHeader="X-Forwarded-Proto"/>

该行配置作用为获取nginx重写的头信息中的客户真实ip、真实协议头,通常进行了反向代理才需要增加真实ip获取配置,启用了https才需要增加protocolHeader属性

修改后结构如下:

image.png

安全篇

对服务器进行管理通常使用ssh客户端,我们修改了服务器sshd的默认端口

image.png


    安全组配置中允许80、443、ssh端口的入方向请求,出方向请求并没有任何限制

image.png

0条评论
发表评论