服务器篇
PublicCMS部署在了阿里云服务器共享型服务器上,1核CPU,2G内存,2M带宽,40G硬盘,公网IP地址:47.94.206.29
该类服务器性能不是很高,且在双十一等节点会更加低下,不过PublicCMS官网每天不超过一万pv,且网站做了静态化,只有搜索和部分动态页面消耗资源,服务器运行十分稳定,相信即使到10万pv 也只需要增加一些带宽
MySQL数据库与CMS都部署在这台服务器上,CMS的内存占用一般不超过500M,实际使用内存在300M左右浮动
域名篇
publiccms主要有www.publiccms.com publiccms.com search.publiccms.com cms.publiccms.com download.publiccms.com 几个域名解析
其中www.publiccms.com publiccms.com指向了数据目录的web目录,即为静态文件
download.publiccms.com域名作为cdn域名
download.publiccms.com的https配置是在cdn完成的,回源请求走的是http
在CMS的最新开发分支中,我们增加了cdn和oss支持,在维护->站点配置->oss中配置cdn地址后,${getUrl("assign/images/logo.png")} 或者内容的封面图、编辑器里面上传的图片等地址都将变为cdn前缀的路径
除了download.publiccms.com用作cdn回源域名外,其他域名的http请求都强制跳转到了https
cms.publiccms.com search.publiccms.com都反向代理到了cms服务
search.publiccms.com这个域名通过配置模板根目录指向了cms的搜索模板目录
部署配置篇
服务器对外提供服务的程序是nginx,动态请求由运行在tomcat里的cms处理
nginx配置在域名篇已经介绍的比较详细,下面是cms的upstream配置
tomcat配置在其官方配置基础上主要有以下修改:
在conf/server.xml配置文件的Host标签中,增加了一行
<Valve className="org.apache.catalina.valves.RemoteIpValve" protocolHeader="X-Forwarded-Proto"/>
该行配置作用为获取nginx重写的头信息中的客户真实ip、真实协议头,通常进行了反向代理才需要增加真实ip获取配置,启用了https才需要增加protocolHeader属性
修改后结构如下:
安全篇
对服务器进行管理通常使用ssh客户端,我们修改了服务器sshd的默认端口
安全组配置中允许80、443、ssh端口的入方向请求,出方向请求并没有任何限制
0条评论
发表评论