正文:
我们在安装完 BT(宝塔面板)并建立好网站后,需要对面板和服务器进行一些简单的设置,例如优化 PHP、优化 MySQL、开启 PHP 缓存、限制网站流量等,以提高服务器性能。对于使用 BT(宝塔面板)的用户来说,这些步骤都非常简单,我们可以直接在面板中进行操作。
现在,我将写下如何设置宝塔面板以提高服务器性能的过程,希望能帮助初次使用宝塔面板的朋友们。我之前写过很多关于 BT(宝塔面板)的教程,实际上应该将这些教程整理在一起,对于初学者来说会非常有帮助。
一、定期释放内存
我们可以添加计划任务,设置每天或每周释放一次内存,具体间隔时间可以根据自己的网站情况来定。一般来说,我会选择在夜深人静的时候执行,这样非常简单。只需要一个 shell 脚本即可。我们登录 BT(宝塔面板)→计划任务→任务类型→释放内存。
第二,添加 Swap
还是要开 swap 的。当然,对于土豪来说,内存都是 64G,真的没必要搞 swap。不过,边肖的屌丝,内存 2G,蜘蛛天天凶。这个服务器肯定是无法承受的。所以从经济应用的角度来说,一般的 vps 内存加 Swap 比较好。在宝塔面板的软件管理> >系统工具中找到Linux工具箱 1.4,点击最右边的“设置”打开 Swap 虚拟内存,按照以下推荐值进行设置。
Swap 推荐值:2G 及以下内存的服务器设置为与物理内存容量相同的 swap;2G 以上,设为 2G。如果正在运行的程序消耗特殊内存,与 2G 以上内存的交换也可以设置为与内存相同。该面板还附带了关于如何添加交换的详细说明。官方似乎也给出了互换的设定值,边肖在此引用。
Swap 推荐值:
物理内存 Swap
512M 1024M
1GB 1500M
2GB 2048M
4GB 4096M
第三,安装 PHP 缓存扩展
Php 版本强烈推荐 php 7.0 以上版本,PHP 缓存扩展推荐使用 Opcache 脚本缓存和 Memcached 或 redis 内容缓存。在软件管理> >中点击你正在使用的 php 版本最右边的“设置”进入安装扩展,点击右边这两个扩展后面的“安装”再次确认。Opcache 会做的很快,但是 memcached 的安装还是有点慢。
只安装一个内容缓存和脚本缓存,不要同时安装多个。但是,我们可以同时安装 Memcached 和redis内容缓存,不会发生冲突。当然,我们也可以安装 imagemagick 来完善 ImageMagick 的高性能图形库,如果你需要的话。
四、php 配置调整
因为 wordpress 要跑的流畅的话还是很好内存的,wordpress 本身就是个吃内存的大户,所以我们需要在 php 管理的配置修改中,把 memory_limit 脚本内存限制修改成 256M,这样 wordpress 跑起来更顺畅了。我们可以在 php 管理的配置修改里面来搞定。修改 memory_limit,把默认值修改成 256M,保存。
五、PHP 并发调整
宝塔面板在 php 的性能调整里面自带了几个优化过的 php 并发方案,一般 1 核 1G 内存的云服务器,设置 30 并发或 50 并发都可以,当然如果我们的小网站有 30 或者 50 并发绝对够用了,其他配置请自己测试一下合适并发方案。不建议并发超过 300 ,当然如果你的网站流量很大,上 10 万了 ip 了,你设置成 300 也就可以了。但是一个小博客何时才有 10 万 ip 呢,所以好是老老实实设置成 30 并发或 50 并发吧。如果如果实在是并发不够用还是优化数据库缓存可能更有效。这个汇站在下面会提到。
六、php 版本和 MySQL 数据库版本
php7 的性能比低版本有很大提升,汇站强烈建议使用 php7 以上版本;1 核 1G 配置的数据库推荐 MySQL5.5,而 5.6 要求最低内存 1G 以上,所以大家应该知道如何选择了。因为汇站的 vps 是国外的所以配置略高点,3h2g 的配置,这配置完个小网站足够用了。汇站安装的是 php7.2、MySQL5.5。
七、卸载多余扩展组件
如果程序不需要,就卸载 ZendGuardLoader、ioncube、PATH_INFO,安装后不用也一直占用一部分内存。而且宝塔面板自带了很多乱起八糟的什么宝塔运维、宝塔安全登录,这些用不到的全部删掉。
八、CC 防护
使用宝塔 linux 面板很多用户受到 CC 攻击不知如何防范,这时候我们还需要来进行一些简单的设置。
1、开启 waf 安全模块
额,就是这么简单粗暴,就是在 Nginx 管理里面,不过版本最好要是 Nginx1.12 的,低版本不支持这功能,这是免费版支持,如果我们用专业版可以直接用宝塔网站防火墙。
2、网站流量限制
上面设置好还不够,我们需要对网站进行加固,到网站管理里面找到流量限制,开启启用流量控制的功能,如图!
BT(宝塔面板)
宝塔面板自带了几个方案,我们一般选择论坛/博客这种就可以了,这样对网站有个最起码的保护作用,或者说如果被 cc 了,这样设置还是有点作用的。
具体参数解释:
并发限制:一般一个日 IP 数万甚至十万的站,并发设置为一百多都可以。注意!这是并发,相当于你网站一秒钟有多少人同时进行请求。这个量很高了。
单 IP 限制:根据自己网站需求来设置。一般设置为 5 到 10 即可
流量限制:这个是限制单 IP 每个请求的流量大小。根据访客访问自己网站内容需要的流量大小来设置即可。
九、MySQL 性能简单调优
MySQL 配置参数调优 (需要根据网站运行情况调整),不过宝塔面板集成了几个优化方案,我们选择一下就可以了。
宝塔面板还是很贴心的,给出了 5 个不同的优化方案,我们只要对应自己的配置来选择即可。不过有一些地方需要简单说明一下。
1、查询缓存命中率
MySQL 查询缓存是个比较受争议的功能,个人建议当你有在使用 redis、memcached 等缓存软件时,将 query_cache_size 设为 0 可以将其关闭,当你没有使用缓存软件,有多余的内存使用,且数据库瓶颈明显存在时,可以尝试开启查询缓存,这是个非常依赖数据表结构及 SQL 语句优化的功能,若数据表结构和 SQL 语句都针对查询缓存进行过优化,它的效果还是很不错的。所以我们还是要配和 memcached 等缓存来使用,这样效果就会更好,汇站这里就是把 query_cache_size 设为 0。你们也不妨试试看,如果有更好的方案欢迎交流。设置好之后别忘了重启重启 MySQL 服务,
结语:我们一般用 BT(宝塔面板)的免费版,也是足够用了,如果说网站流量很大,也不懂运维,那不妨用他们家的专业版,里面有很多还不错的插件,汇站这里提供的教程也只是一些最简单最基本的设置,对一些小白可以能会有很大帮助,如果你们有更好的优化方案可以一起分享。
转载请注明:汇站网 » 宝塔面板(BT)安全:优化网站访问速度和简单实施 CC 防护措施