这篇文章介绍一下如何让OpenLiteSpeed支持多版本PHP。
安装OpenLiteSpeed:
apt -y update apt -y install wget wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debian_repo.sh | bash apt -y install openlitespeed
openlitespeed包会自带一个PHP7.3,除了7.3以外,官方的这个存储库内还有7.4/7.2/7.1可供安装:
apt -y install lsphp74 lsphp74-common lsphp74-json lsphp74-mysql lsphp74-imap lsphp74-curl apt -y install lsphp72 lsphp72-common lsphp72-json lsphp72-mysql lsphp72-imap lsphp72-curl apt -y install lsphp71 lsphp71-common lsphp71-json lsphp71-mysql lsphp71-imap lsphp71-curl
一般的PHP环境装上面这几个包就足够了,如果有些程序还需要其他的组件没有安装的话,可以搜索你需要的包然后进行安装,例如搜索PHP7.4的其他软件包:
apt search lsphp74
安装了新的PHP版本之后,现在要配置OpenLiteSpeed使其支持,这里演示以PHP7.4为主。
打开OpenLiteSpeed的WEB控制台,找到“服务器”-“外部应用程序”-“添加”:
然后按照下面来填写相应的配置(没提到的配置留空即可):
名称:lsphp74 地址:uds://tmp/lshttpd/lsphp.sock 备注:PHP7.4 最大连接数:10 环境变量:PHP_LSAPI_CHILDREN=10/LSAPI_AVOID_FORK=200M 初始请求超时时间:60 重试超时时间:0 持久连接:是 响应缓冲:否 自动启动:通过CGI守护进程 命令:lsphp74/bin/lsphp 积压长度:100 实例:1 内存软限制:2047M 内存硬限制:2047M 进程软限制:1400 进程硬限制:1400
如图所示:
举一反三,上面的这个配置,如果你是拿来配置PHP7.2的话,只需要更改如下的配置即可,其他可以原样照搬:
名称:lsphp72 备注:PHP7.2 命令:lsphp72/bin/lsphp
同理PHP7.1也是如此:
名称:lsphp71 备注:PHP7.1 命令:lsphp71/bin/lsphp
需要注意的是,每个PHP版本对应的php.ini都不同,它们的路径分别如下:
/usr/local/lsws/lsphp74/etc/php/7.4/litespeed/php.ini /usr/local/lsws/lsphp73/etc/php/7.3/litespeed/php.ini /usr/local/lsws/lsphp72/etc/php/7.2/litespeed/php.ini /usr/local/lsws/lsphp71/etc/php/7.1/litespeed/php.ini
php.ini的配置不共通,如果你切换了版本记得也要修改相应的php.ini,之后重启php进程使修改生效:
touch /usr/local/lsws/admin/tmp/.lsphp_restart.txt
现在如果我们要让某一个虚拟主机支持PHP7.4就只需要找到对应的虚拟主机,然后在里面添加一个脚本处理器即可:
重启OpenLiteSpeed后,可以看到我的这个Chevereto的图床已经在使用PHP7.4了:
如果我将刚添加的脚本处理器删除,那么现在会回到使用默认的PHP7.3:
https://chat.ohshit.fun/为啥下线了呢?
抱歉你这条评论不知道为啥在垃圾评论里面,我刚刚才看到。。
因为域名到期了,忘记续费所以就一直搁那没管了,数据应该是还在的,有空的话我可以换个域名重新开一下。。
lala大佬什么时候出一篇OpenLiteSpeed和apache,nginx,iis的性能对比评测
可以,到时候出一个云评测233
除了使用软件仓库里面的LSPHP,也可以自己编译,大体上没有什么不同,就是记得加入参数’–with-litespeed’即可.
如果是用惯了Oneinstack的用户,使用以下参数可以把大部分习惯搬回来
以LSPHP73为例
–with-config-file-path=/usr/local/lsphp73/etc/php.ini
–with-config-file-scan-dir=/usr/local/lsphp73/etc/php.d
这两个参数指定了php.ini搜索位置和Drop In替换文件位置.
之后做一个软链接 把 /usr/local/lsphp73 链接到 /usr/local/php
此时Oneinstack可以正常识别并安装扩展(如果你需要用Oneinstack管理扩展的话)
另外OLS编译配置的时候 带上参数
–with-user=www –with-group=www
此时网站所有者就是www而不是nobody 适合从Oneinstack迁移
LALA大佬如果有什么OLS方面的问题也可以问我
好的,GCC牛批,awsl