第五篇 选择运行网站的软件 | 从零创建一个属于自己的网站(小白向)
# 前言
选择一个合适的运行网站的程序也是很重要的
# 选择
LAMP 指的是 Linux + Apache + MySQL + PHP
LNMP 指的是 Linux + Nginx + MySQL + PHP
当然如果你用 Windows 也是可以的,不过我遇到用 Windows 的多半用的也是 IIS 而没有使用 Apache 或者 Nginx
这里就按照正常使用 Linux 的流程走(Windows 其实没有多少可以讲的,因为基本上都是可视化操作,自己捣鼓几下就懂了)
上面两种解决方案最大的区别就是 Apache 和 Nginx,其他都是相同的(当然如果你想搭建静态网站,那 MySQL 和 PHP 也不用安装了)
而这两个都是运行网站的关键软件,下面是百度百科对两款软件的介绍
这篇文章讲述了这俩的区别和优缺点 https://zhuanlan.zhihu.com/p/467638623
我这里就简单的总结一下
Apache 稳定,功能多,灵活,支持动态加载模块,同步模型
Nginx 高性能,高并发,反向代理优秀,静态处理性能优秀,异步模型
其实在个人场景下这俩的使用体验可能都差不多,主要是我服务器内存不大,再加上我用的 hexo,所以全是静态页面,并且对内 docker 容器的反向代理用的很多,所以我就选择了 Nginx
这里可以根据自己要做的网站类型来做决定
# MySQL(数据库)
这个就因人而异了,还是那句话,看你自己网站程序的要求,有些网站程序对数据库的版本有要求,或者不同的数据库程序,例如 PostgreSQL 之类的
而且这东西版本低了有些网站程序不支持,版本高了也不支持,所以请合理选择适合自己的版本
并且这玩意更换版本也是麻烦,需要全部导出数据库,更换完版本后再重新导入
数据无价
请一定做好备份并拥有可能会导致网站崩溃的觉悟
至于 MySQL 参数如何调整则不在本系列教程范围内,有需求的朋友请自行在搜索引擎查找资料
# PHP
现在新的网站程序多半都已经支持 php7 以上了,可能部分老旧的还仅支持 php5
高版本的 php 带来的安全性肯定会比老版本高一些,但是像这些底层程序,还是不要随便更换版本,如果要做版本更换
最好的办法就是在测试环境进行更换,确认无误后再上线生产环境
当然如果没有这些东西的话,在进行重大操作前拍摄快照也是一种很好的防范方式
# Linux
Linux 还是蛮安全的,注重一下权限管理,开启服务器防火墙并关闭除服务需要开放以外的所有端口,开启禁止 ping,修改 ssh 默认端口并最好关闭 root 账户的远程密码登录功能,保留密钥登录
这样除非是你密钥文件泄露,否则暴力穷举破解根本没戏
# 后记
这章没有什么推荐的选项,多半是根据自己的网站程序而定,所以切勿依葫芦画瓢,请根据实际情况而定
Use this card to join MyBlog and participate in a pleasant discussion together .
Welcome to GoodBoyboy 's Blog,wish you a nice day .