我们安装完成BT(宝塔面板)建好网站之后,需要给面板和服务器做一些简单的设置,比如说php优化、myql优化、开启php缓存、网站流量限制等等来提高服务器的性能,当然对于你用了BT(宝塔面板)来说,这些步骤都很简单,我们直接都是在面板里面来操作。
大鸟把如何设置宝塔面板提高服务器性能的过程写下来,希望能帮到初次使用宝塔面板的朋友们。大鸟貌似写过很多关于BT(宝塔面板)的教程了,大鸟应该把这些教程罗列都到一起,应该对于使用BT(宝塔面板)初学者朋友帮助很大。
在6.X版本中宝塔面板阉割了nginx中的waf安全管理模块,不过呢还是可以开启隐藏的,只是没有了界面管理,具体的看下面的【cc防护】,需要说明的是,如果是软件防cc,那么对服务器的硬件要求很高,不然是没有什么意义的。但是防止一般的恶意攻击还是很有帮助的。
一、定期释放内存
添加计划任务,可以设置每天或一周释放一次,间隔时间根据自己网站情况定,大鸟一般是每天执行一次释放内存,执行时机一般选在夜深人静的时候,当然这个释放内存大鸟前面也详细讲过了,这里就不赘述了。(Bt(宝塔面板)的计划任务功能定期自动释放内存)
我们要登陆Bt(宝塔面板)→计划任务→任务类型→释放内存。
二、添加 Swap
开启swap还是有必要的,当然对于土豪来说内存一上都是什么64G啊这种,那真的没什么必要搞swap了,但是大鸟这种屌丝,内存也就是2G,这尼玛各路蜘蛛每天一顿猛撸,大鸟这服务器肯定是吃不消的。因此从经济适用角度来说,一般的vps内存还是添加 Swap比较好。在宝塔面板的软件管理>>系统工具中找到 Linux 工具箱 1.4,点击最右侧的“设置”打开 Swap 虚拟内存,按照下面的推荐值进行设置。
Swap 推荐值:2G 和 2G 以下内存的服务器,设置成和物理内存相同容量 SWAP;2G 以上的,设置为 2G。如果跑的程序特别耗费内存,2G 内存以上的 Swap 也可以设置与内存相同。面板也自带了如何添加swap的详细说明。官方貌似也给了swap的设置值,大鸟这里引用一下。
Swap推荐值:
- 物理内存 Swap
- 512M 1024M
- 1GB 1500M
- 2GB 2048M
- 4GB 4096M
- 6GB+ 4096M
三、安装 PHP 缓存扩展
php版本强烈建议选择php7.0以上版本的, php 缓存扩展推荐使用 Opcache 脚本缓存和 Memcached或者redis内容缓存。在软件管理>>你使用的 php 版本最右侧点击“设置”,进入安装扩展,右侧点击这两个扩展后面的“安装”,再确认一次,Opcache很快搞定,但是memcached这玩意安装起来还是有点缓慢的。
内容缓存和脚本缓存都只安装一个,不要同时安装多个。但是呢Memcached或者redis这两个内容缓存我们可以同时安装,没有什么冲突。当然了,我们还可以安装imagemagick来提高 Imagick高性能图形库,如果你需要的话。
四、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,安装后不用也一直占用一部分内存。而且宝塔面板自带了很多乱起八糟的什么宝塔运维、宝塔安全登录,这些用不到的全部删掉。
八、NgINX防火墙和CC防护
使用宝塔linux面板很多用户受到CC攻击不知如何防范,这时候我们还需要来进行一些简单的设置。在7.X之后版本第三方应用可以安装 Nginx免费防火墙,目前是1.0版本。说明一下:免费版和收费版相互不兼容。如果你已经安装了收费版的不要安装免费版。只能存在一个
首先需要在面板的软件管理里面点一下更新软件列表
然后搜索Nginx
集成了webshell查杀
具体有什么功能。大家可以去慢慢体验吧
2、网站流量限制
上面设置好还不够,我们需要对网站进行加固,到网站管理里面找到流量限制,开启启用流量控制的功能,如图!
宝塔面板自带了几个方案,我们一般选择论坛/博客这种就可以了,这样对网站有个最起码的保护作用,或者说如果被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(宝塔面板)mysql 启动错误-server PID file could not be found)
十、总结
我们一般用BT(宝塔面板)的免费版,也是足够用了,如果说网站流量很大,也不懂运维,那不妨用他们家的专业版,里面有很多还不错的插件,大鸟这里提供的教程也只是一些最简单最基本的设置,对一些小白可以能会有很大帮助,如果你们有更好的优化方案,不妨和大鸟分享。
转载于大鸟博客 https://www.daniao.org/2924.html