如图(4-2-1)我们进入宝塔面板后台,找到软件商店,通过步1所示的应用搜索或直接找到要设置参数的php版本,我们以php7.2为例,点击步2所指向的
设置
菜单,进入php参数设置面板。1、PHP扩展的几点建议
如上图(4-2-2)所示,我们可以通过点击安装扩展Tab来打开php扩展管理页,选定你要使用的扩展,直接点操作项的安装即可快速安装php扩展应用。
PHP扩展即为PHP编程语言的应用库,安装常用扩展是PHP程序员的必备技能,不管你是不是从事服务器运维,基本的东西都得搞明白,宝塔已经将常用的扩展都集成了,我们可以通过面板很方便的安装并管理扩展。
需要注意的是——
1-1、如果程序不需要,就卸载不用的扩展,装多了也会占内存、占用系统资源;
1-2、宝塔只是将常用的扩展集成在面板PHP设置项里,不代表不支持其它扩展了,我们可以通过Linux系统连接到SSH登录,使用命令行安装其它的扩展。
1-3、我们也可以通过PHP配置文件php.ini,下面没有开启的扩展前面都是有分号的,只要把分号删掉,重启Apache服务器或者Nginx服务器就可以了。我们就可以直接这样书写:
extension=要开启的扩展名称
2、宝塔面板PHP之必要参数设置
如上图(4-2-3)所示,我们点击配置修改进入到php的运行参数管理页面(图示上面的所有参数都可以通过修改php.ini即配置文件来修改,宝塔为了方便用户直接面板化,使用起来更简单快捷。)
除了特殊应用外,建议使用官方推荐的参数。
参考下表 我们给出了标签的分析:
<?php ?>
长标签,开启的后<? ?>
短标签也支持
max_execution_time
最大脚本运行时间
300秒
php最长运行时间
max_input_time
最大输入时间
60秒
PHP脚本解析请求数据。这个参数是特别重要的,当你上传大文件,使用PHP的文件上传功能
memory_limit
脚本内存限制
128M
php运行时内存占用限制
post_max_size
POST数据最大尺寸
50M
通过post上传最大的文件尺寸
file_uploads
开启关闭,是否允许上传文件
开启
文件上传开关
upload_max_filesize
允许上传文件的最大尺寸
50M
上传单个文件的最大尺寸
max_file_uploads
允许同时上传文件的最大数量
20个
允许同时上传的进程数
default_socket_timeout
Socket超时时间
60秒
socket流从建立到传输再到关闭整个过程必须要在这个参数设置的时间以内完成
error_reporting
错误级别
E_ALL & ~E_NOTICE
显示除去 E_NOTICE 之外的所有错误信息
display_errors
开启关闭,是否输出详细错误信息
开启
开启状态下,若出现错误,则报错,出现错误提示
cgi.fix_pathinfo
开启关闭,是否开启pathinfo
开启
开启后支持URI
date.timezone
时区
PRC
时区的选择
表(4-2-1)
需要注意的事,调整参数有风险,一定要多加研究搞明白后再调整。3、宝塔面板PHP并发调整
如上图(4-2-4)所示,我们点击性能调整,打开性能调整面板,此处是重点,根据服务器的配置配比在步1指向的区域选择并发方案 1GB内存2GB内存4GB内存8GB内存16GB内存32GB内存 (根据您服务器的内存大小实际选择),然后点击 应用方案。需要说明的,不是并发方案越大越好,一定要实事求是,基于自己服务器的内存大小来合理调整。事实上,宝塔官方已经给大家提前预置了常用内存大小的方案,不需要我们再去太细化的修改参数策略。官方给出的注意事项——
【最大子进程数量】越大,并发能力越强,但max_children最大不要超过5000
【内存】每个PHP子进程需要20MB左右内存,过大的max_children会导致服务器不稳定
【静态模式】下会始终维持设置的子进程数量,对内存开销较大,但并发能力较好
【动态模式】下会按设置最大空闲进程数来收回进程,内存开销小,建议小内存机器使用
【64GB内存推荐值】max_children<=1000 , start/min_spare=50 , max_spare<=200
【多PHP版本】若您安装了多个PHP版本,且都在使用,建议适当降低并发配置
【没有数据库】若没有安装mysql等数据库,建议设置2倍于推荐并发
【注意】以上为建议配置说明,线上项目复杂多样,请根据实际情况酌情调整
4、PHP并发能力提升之Session配置
若所布署代码允许的情况下,php版本强烈建议选择php7.0以上版本的, php缓存扩展推荐使用 Opcache 脚本缓存、Memcached、redis内容缓存。
注意:内容缓存和脚本缓存同时只允许安装1个。
Memcached或者redis这两个内容缓存我们可以同时安装,没有冲突。
官方给出的说明——
- 若你的站点并发比较高,使用Redis,Memcache能有效提升PHP并发能力
- 若调整Session模式后,网站访问异常,请切换回原来的模式
- 切换Session模式会使在线的用户会话丢失,请在流量小的时候切换
我们在布署项目时,一定要注意,不管如何设置都是为了一个最终目的,强化并发、增加稳定性,所以,本课节所讲述部分,一定要慎重修改,不要得到了性能变成了不稳定,您也可以在测试服务器来测试调整效果,提前多做些测试工作对后面项目正常运行更为重要!