精品软件与实用教程
手把手教你配置 CyberPanel web 服务器面板
如果你正在使用WordPress建站搭建博客,那么OpenLiteSpeed Web或许是你最佳的选择,LiteSpeed是 Apache (阿帕奇)的替代品,使用LiteSpeed作为web服务端,其网站的访问速度远远高于Apache和Nginx的解析速度。LiteSpeed 提供了更好的性能,可以减少资源占用。而且 CyberPanel 是第一个使用免费的 OpenLiteSpeed Web服务器开源面板!
最关键的是 LiteSpeed 提供了一个WordPress缓存插件 LiteSpeed Cache ,LiteSpeed Cache几乎是傻瓜式插件,只需几步简单的设置,就可以让WordPress的访问速度快到起飞,毫不夸张的说!
CyberPanel 是第一个LiteSpeed为web服务器的Linux面板,使用LiteSpeed Cache简单优化之后 Gtmetrix 和 Google PageSpeed Insights 的评分几乎都是A,这个结果让人十分满意。因为无论是Google还是Bing,搜索引擎排名的第一重要因素就是网页的打开速度,也就是说在进行任何SEO优化之前,选择一个正确的Web服务器端是非常重要的,下面详细介绍一下,安装CyberPanel之后的详细配置。
CyberPanel官网:https://cyberpanel.net/
CyberPanel安装
简单说一下 CyberPanel安装 ,2023年9月CyberPanel在服务器版本安装上有一些调整。不再支持Centos以及CentOS Stream系统,还有Rocky Linux和 Red Hat
- 全新安装 Ubuntu 20.04、Ubuntu 22.04、CloudLinux 7、CloudLinux 8、AlmaLinux 8 的服务器。
- 1024MB RAM 或更高
- 10GB磁盘空间
注意:Ubuntu仅支持Ubuntu 20.04、Ubuntu 22.04这两个版本,不要使用高版本,例如Ubuntu 23,Ubuntu 23是无法安装CyberPanel的,很多安装CyberPanel失败的,大多都是服务器系统的原因。
在安装CyberPanel的过程中,CyberPanel包含了两个版本,CyberPanel 与 CyberPanel Ent 简单介绍一下这两个版本。
CyberPanel 的这两个版本 100% 相同。唯一的区别是后端运行的是哪个 Web 服务器。
- CyberPanel附带OpenLiteSpeed,并且完全免费,适用于无限数量的域和工作进程。
- CyberPanel Ent附带LiteSpeed Web Server Enterprise,并且对 1 个域免费。如果您需要 1 个以上域名,您可以查看我们的定价页面。CyberPanel 许可证包含LiteSpeed Enterprise 许可证的价格。
CyberPanel是免费的使用的Web服务端是开源的OpenLiteSpeed,CyberPanel Ent是收费的,Web服务端是商业版的LiteSpeed Web Server Enterprise。
下面看一下两个版本有什么不一样:
CyberPanel OpenLiteSpeed
OpenLiteSpeed 是我们的免费开源 Web 服务器,最常用于不经常更改的单个站点。这是因为 OpenLiteSpeed 需要重新启动才能加载任何新的 .htaccess 文件。
- 强大的缓存引擎
- 与 Apache 兼容的重写规则
- CyberPanel 和 DirectAdmin 兼容性
- 无限的工作进程
- 行业标准 mod_security 库
- 开源、免费
- 社区支持
CyberPanel Ent LiteSpeed Web Server Enterprise
LiteSpeed Web Server 企业版非常适合更新频繁的共享托管环境。LiteSpeed Web Server 自动检测 .htaccess 的更改并根据需要进行调整,而无需重新启动。
- 更强大的缓存引擎
- 完全兼容 Apache
- 与 cPanel、Plesk、DirectAdmin、CyberPanel 等兼容
- 基于许可证的工作进程数
- 专有的高性能 mod_security 引擎
- SSL 握手卸载
- 商业版,免费
- 商业支持
查看CyberPanel和CyberPanel Ent详细功能对比。
在了解了CyberPanel和CyberPanel Ent详细功能后,免费开源的CyberPanel就可以满足建立WordPress网站的需求了。在服务器上安装CyberPanel是很简单的。
下面在Google Cloud的虚拟机实例上进行安装CyberPanel。
新建 Google Cloud 虚拟机实例
首先开通 Google Cloud ,在Google Cloud中创建一个 Ubuntu 22.04 的虚拟机实例。
在Google Cloud中点击左侧菜单,点击Compute Engine选项,选择虚拟机实例,如果你之前没有创建过虚拟机实例的话,需要先启用 Compute Engine API
在虚拟机实例中点击创建实例,下面准备创建一个新的Ubuntu虚拟机实例。
在创建实例页面中开始新建一个虚拟机实例,填写好配置信息,右面是每月估算费用。免费的Google Cloud可以免费获取有效期三个月的400美元试用金。
名称:填写一个自定义名称,或者默认名称,小写与数字,不能包含特殊符号
区域:在这里选择你想在哪个地区创建虚拟机实例,点击此处查询所有区域 如果你做海外网站,针对不同国家可以选择不同的区域,对于国内来说,亚洲地区的香港和台湾访问速度都很快。
可用区:默认即可,可用区是在同一区域中的不同机器类型,不同的IP节点。
机器配置:在通用中默认选择E2,E2对于新手来说,使用已经足够了,经济实惠,日常计算费用低。
E2 机器系列最多可以有 32 个 vCPU,最多 128 GB 内存,每个 vCPU 最多 8 GB,所有机器系列的费用最低。E2 机器系列具有预定义的 CPU 平台,运行 Intel 处理器或第二代 AMD EPYC Rome 处理器。在创建虚拟机时,系统会为您选择处理器。此机器系列在 Compute Engine 上以最低价格提供各种计算资源,尤其在结合承诺使用折扣时价格更优。
E2 和 N1 系列包含共享核心机器类型。 这些机器类型分时共用一个物理核心,这是运行小型、非资源密集型应用的经济实惠的方法。
E2:提供 2 个 vCPU,可用于短时间爆发。
在下面的机器类型中,因网站访问量需求而选择预设,可以选择CPU共享核心和独立核心!在预设中有详细的选项,如果没有你想使用的选项,可以在自定义中,自定义CPU与内存大小。
接下来几个选项默认即可,在启动磁盘选项处,点击更改,在这里选择服务器所使用的操作系统。在下面的公共映像中选择操作系统。
下面是一个配置示例:
操作系统:Ubuntu
版本:Ubuntu 22.04 LTS (注意,一定要选择x84/64的操作系统版本,操作系统版本和上面选择的虚拟机实例CPU平台架构要对应)
启动磁盘类型:SSD 永久性磁盘,这种磁盘性能最佳。
大小:这里按需填写大小,一般个人网站博客有100GB足够了,这个不够的话,后期可以在线增加磁盘大小。
选择完毕之后,点击选择,继续创建虚拟机实例。
在防火墙选项中,勾选三个规则,然后安装可观测性 Ops Agent
Ops Agent是用来实时监控服务器状态的,在后期运维服务器时,很有必要!建议安装。
最后点击创建,一台Ubuntu的虚拟机实例就已经创建好了,接下来配置一个公共外网IP和防火墙后,就可以正常使用了。
在Google Cloud平台中点击左侧菜单,选择VPC网络中的IP地址。
点击预留外部静态IP地址,之后给静态地址起一个名称,允许使用小写字母、数字、连字符。
在区域和附加目标处,选择你刚才建立的虚拟机实例的区域,选择好区域后,点击下面的附加目标,附加到刚刚你建立的虚拟机实例上。
注意:未附加到实例或负载均衡器的静态 IP 地址是按更高的每小时费率计费的。也就是说,你申请了固定IP地址后,不使用的话是会高价计费的,主要是为了避免浪费和IPV4资源紧缺的原因。
如果你申请下来的外部IP地址你觉得不满意,还可以申请多个外部IP地址,挑选你满意的IP,然后删除其它的即可。删除外部IP只需要勾选IP地址,然后点击释放静态地址。
ip地址申请完毕之后,点击左侧菜单的防火墙,这里要关闭Google Cloud的防火墙,为了方便,可以使用服务器上的防火墙。将防火墙设置成透明防火墙,放行所有端口。
点击 创建防火墙规则 新建一个VPC 防火墙规则。填写一个防火墙名称,例如:all
接下来选择其它防火墙规则:
流量方向:默认入站
对匹配项执行的操作:默认Allow
目标:选择网络中的所有实例
来源过滤条件:默认IPV4范围
来源IPv4范围:填写 0.0.0.0/0 (意思是所有范围)
协议和端口:选择全部允许
选择完毕后,点击创建,就创建了一个所有访问端口都开放的透明防火墙。
接下来做一个简单配置就可以安装CyberPanel了。可以参考下面的链接,对Ubuntu服务器进行配置。
安装CyberPanel
首先通过 SSH 连接到您的服务器:
CyberPanel 的安装非常简单。使用SSH工具(Xshell 7)以root用户身份通过 SSH 登录服务器。
SSH登录成功后更新系统软件包
sudo apt update && sudo apt upgrade -y
接下来运行安装脚本
运行以下命令。它将启动自动安装脚本,该脚本将提示您做出一些关于 LiteSpeed 版本以及要安装哪些附加组件的决定。
sh <(curl https://cyberpanel.net/install.sh || wget -O - https://cyberpanel.net/install.sh)
如果由于某种原因您无法登录root,您可以使用此命令
sudo su - -c "sh <(curl https://cyberpanel.net/install.sh || wget -O - https://cyberpanel.net/install.sh)"
安装脚本输入完毕后,自动运行安装程序,选择您想要使用的 LiteSpeed 版本。
选择要安装的 LiteSpeed 版本。如果您选择LiteSpeed Enterprise,请先确保您已获得许可证密钥。1个域名免费,但您仍然需要获取密钥。
如果安装失败,请最终确认你的操作系统版本。仅支持 Ubuntu 20.04、Ubuntu 22.04、CloudLinux 7、CloudLinux 8、AlmaLinux 8 的服务器
输入数字1,安装OpenLiteSpeed
是否安装 PowerDNS, Postfix 和 Pure-FTPd 这三个附加组件
Google Cloud禁用了SMTP 端口 25,因此Postfix 邮件服务器即使安装也无法使用。况且暂时没有做邮件服务器的需求,DNS服务器和FTP服务器也暂无需求,FTP可以使用Xftp7上传下载,可以选择不安装这三个附加组件。当然如果你有某些方面的需求,可以按需安装。
远程MySQL(默认N):N
允许您的数据库安装在远程服务器上,输入N后,在本服务器安装MySQL数据库,如果你想将数据库安装在其它服务器上,这一步可以选择Y,配置远程数据库连接。
CyberPanel 版本(默认最新版本):您可以选择安装以前版本的CyberPanel,或者按Enter键安装最新版本
设置密码,如果这一步默认的话,会配置默认密码(默认“1234567”):建议您使用“s”设置自己的强密码。
接下来配置缓存扩展,将下面两个缓存工具Memcached和Redis默认安装即可。
分布式内存对象缓存系统,Memcached(默认 Y):Y
内存数据结构存储,用作数据库、缓存和消息中断,Redis(默认 Y):Y
内核看门狗用于监视系统是否正在运行。它应该自动重新启动由于不可恢复的软件错误而挂起的系统!默认回车后开始安装CyberPanel
安装过程将自动进行。这将需要 10 分钟左右,具体取决于服务器的速度。
安装完毕之后输入“y”重新启动。或者在执行其他所需操作后输入“reboot”。
到这一步CyberPanel已经安装完了。
在浏览器中输入https://ip:8090
输入用户密码后就可以访问CyberPanel了。
CyberPanel配置
之前为了优化网站的 Gtmetrix得分和 Google PageSpeed Insights 得分绞尽脑汁,而在CyberPanel+OpenLiteSpeed中不费吹灰之力就能实现得分全绿甚至满分了。
CyberPanel安装完毕之后,下面开始一步一步的配置CyberPanel,当然CyberPanel虽说是开箱即用,但是如果想投入生产环境,还是有很多地方需要配置。
SSH配置
CyberPanel安装之后,额外的端口需要重新激活,例如SSH之前修改了端口,安装CyberPanel后,SSH就无法连接了。
登录CyberPanel面板后,点击左侧菜单安全,选择SSH加固,点击保存修改后,就可以正常SSH登录了。
否则即便是你在配置SSH的时候修改了端口,安装CyberPanel面板后,即便是防火墙中开放了SSH端口,也是无法使用SSH连接的,不知道是个BUG还是刻意设计的。
左侧菜单安全下面点击防火墙,这个防火墙是CyberPanel面板默认的防火墙,仅仅可以实现开放和关闭端口。
之前我们在Google Cloud上设置的透明防火墙是第一层防火墙,平台层的防护墙。这个防火墙属于第二层防火墙,服务器层的防火墙。
防火墙配置
除了基本的端口防火墙外,CyberPanel面板还可以安装CSF防火墙和ModSecurity,查看如何配置ModSecurity
CSF是国外一家小公司开发的linux系统免费防火墙,它基于iptables工作,能有效缓解服务器压力,具有自动屏蔽暴力破解密码IP、管理开放端口、免疫轻量DDos和CC等等功能,同时,安装和使用也极为简便,在我们常用的DA和CP面板还有图形化操作界面,也支持个人普通用户安装于LNMP环境下使用。
同时CyberPanel面板还提供了Imunify防火墙集成服务。
Imunify 360 保护基于 Linux 的 Web 服务器和所有托管网站免受恶意软件感染、Web 攻击、漏洞利用和所有其他威胁。
如何测试 Imunify360?您可以在无限数量的服务器上免费探索 Imunify360 的所有功能14 天。无需信用卡信息。试用期结束后,您可以登录cln.cloudlinux.com,通过CloudLinux Network(CLN)购买Imunify360许可证。
Imunify是需要付费的,不建议安装。使用免费的CSF防火墙功能已经足够。当然在安装WordPress后,还有许多安全类的插件可供选择,这里就不过多介绍防火墙相关的内容。
你可以选择安装CSF免费防火墙,或者关闭CyberPanel面板提供的基础端口防火墙,后面在WordPress中也可以安装防火墙。
WordPress中的防火墙,属于第三层防火墙,应用类的防火墙,在WordPress中可以很方便的配置防火墙。
Docker 管理器配置
Docker 使用容器化技术,使部署和运行应用程序变得简单易行。Docker 将应用程序代码与运行所需的所有库和依赖项打包在一起。打包应用程序后,它将在 Docker 可用的任何环境中运行。
CyberPanel 为您提供了一种处理 Docker 容器和映像的简单方法。默认情况下,在安装 CyberPanel 期间不会安装 Docker。
您如果需要Docker Manager的话,可以安装它:在左侧菜单中,单击 Docker 管理器进行安装。
单击“安装 Docker”以启动安装过程,这可能需要几分钟时间。安装完成后,页面将自动刷新。现在,你已准备好管理 Docker 映像和容器。
修改套餐配置
在建立网站之前,需要先修改套餐配置,因为CyberPanel是多用户模式,所以在建站方面偏向一些虚拟机销售的逻辑,创建网站时候,需要选择网站的用户所有权,还有网站限制。
这个套餐就是用来限制网站大小的。
初始化的套餐 Default 中,默认的磁盘空间和流量都是1000,子域名限制为20,邮件帐户、数据库和FTPS这三项先不用管,基本用不到。
点击编辑。将域名、硬盘空间、流量修改为“0”,0为无限制。修改之后Save保存即可。
创建网站
在左侧菜单网站菜单下面点击创建网站,
选择套餐:默认选择Default
拥有者:默认选择 admin
域名:填写主域名即可,无需填写www,会自定绑定www的域名,如果是二级域名,直接填写二级域名。
邮箱:随意填写
选择PHP版本:选择的是PHP8.0,有多个PHP版本可以选择,PHP7.4是相对稳定的,PHP8.0和PHP8.1有时会遇到莫名其妙的故障。如果遇到问题,可以将PHP版本切换到PHP7.4
额外功能:勾选SSL,勾选SSL后会自动生成SSL证书。
点击创建网站之后,网站就已经创建完毕了!
open_basedir 保护禁止您的 PHP 脚本访问指定路径之外的文件系统,即 open_basedir “/home/domain.com/”
如果为 open_basdir 指定了此路径,则您的 PHP 代码无法访问超出范围的文件系统 /home/domain.com/
这基本上有助于防止服务器上的单个站点被黑客攻击。
如果你想启用 open_basdir 防止跨站攻击,可以在该网站的文件选项下,找到防跨站的图标,点击进行激活。
LiteSpeed设置
在菜单服务器设置下面点击LiteSpeed设置
这是LiteSpeed服务器的全局设置。
最大连接数:10000
指定服务器可以接受的最大并发连接数。这包括纯TCP连接和SSL连接。 一旦达到此限制,服务器将在完成活动请求时关闭“Keep-Alive”的连接。
当服务器由”root”用户启动时,服务器会尝试自动调整每个进程的文件描述符限制,但是,如果自动调整失败,你可能需要手动增加此限制。
同时在线10000用户,这个数值足够了,当然这个是理想数值。
最大SSL连接数:10000
指定服务器将接受的最大并发SSL连接数。 由于并发SSL和非SSL的连接总数不能超过”最大连接数”的限制,因此允许的最大SSL连接的数量须低于此限制。
连接超时:300
指定一个请求允许的最大连接空闲时间。 如果在这段时间内连接一直处于空闲状态(即没有I/O活动),则它将被关闭。
将值设置得尽可能低,在可能的拒绝服务攻击中,这可以帮助释放无效连接所占用的连接数。
Kepp Alive超时:5
指定持续连接请求的最长闲置时间。 如果在这段时间内没有接收到新的请求,该连接将被关闭。 这个设置只适用于HTTP/1.1连接。HTTP/2连接有较长的闲置时间,不受此设置影响。
建议您将值设置得刚好足够处理单个页面 视图的所有请求。没有必要延长持续连接时间。较小的值可以减少闲置 连接,提高能力,以服务更多的用户,并防范拒绝服务攻击。2-5秒 对大多数应用是合理范围。Litespeed在非持续连接环境是非常高效的。
内存缓存大小:20M
指定分配用于缓存/服务小静态文件的总内存。
开启GZIP压缩:Enable
PHP设置
在服务器设置菜单内,有针对每个网站特定的PHP设置,选择网站域名。可以设置对应的PHP参数。
初始化请求超时 (秒):600
指定服务器等待外部应用响应新建立的连接的第一个请求的最大时间 如果服务器在这个限制时间内没有收到外部应用的任何数据,它将把这个连接标记为坏(Bad)。这有助于识别与外部应用程序的通信问题。 这有助于尽快发现与外部应用的通信问题。如果某些请求的处理时间较长,则增加这个限制以避免503错误信息。
最大连接数:10
指定服务器与外部应用之间可建立的最大并发连接数。该设置控制外部应用程序可同时处理多少个请求。 然而,真正的限制还取决于外部应用本身。如果外部的速度不够快,或者无法处理大量的并发请求,那么将这个值设置得更高也无济于事。
设置一个高值并不能直接变成高性能。设置为一个不会使外部应用程序过载的值,将提供最佳的性能/吞吐量。
内存软限制:2047M
此限制的目的主要是为了防范软件缺陷或蓄意攻击造成的过度内存使用, 而不是限制正常使用。确保留有足够的内存,否则您的应用程序可能故障并 返回503错误。限制可以在服务器级别或独立的外部应用程序级别设置。如 果未在独立的外部应用程序级别设定限制,将使用服务器级别的限制。
如果在两个级别都没有设置该限制,或者限制值设为0,将使用操 作系统的默认设置。
内存硬限制:2047M
与”内存软限制 (bytes)”非常相同,但是在一个用户进程中,软限制 可以被放宽到硬限制的数值。硬限制可以在服务器级别或独立的外部应用程序级别设 置。如果未在独立的外部应用程序级别设定限制,将使用服务器级别的限制。
如果在两个级别都没有设置该限制,或者限制值设为0,将使用操 作系统的默认设置。
进程软限制:1400
限制用户可以创建的进程总数.所有现有的进程都将被计算在这个限制之内,而不仅仅是要启动的新进程。
该限制可以在服务器级别或单个外部应用级别进行设置.如果未在应用级别设置,则将使用服务器级别的限制. 如果该值为0或服务器级和应用级都没有设置,将使用操作系统的默认设置
进程硬限制:1500
与”进程软限制”非常相同,但是,在用户进程中软限制 可以被放宽到硬限制的数值。硬限制可以在服务器级别或独立的外部应用程序级别设 置。如果未在独立的外部应用程序级别设定限制,将使用服务器级别的限制。 如果在两个级别都没有设置该限制,或者限制值设为0,将使用操 作系统的默认设置。
数据库持久连接:开启
指定在处理完请求后是否要保持连接 持久连接可以提高性能, 但某些FastCGI外部应用程序不完全支持持久连接。默认为 “On”。
注意:在PHP设置中,数据库持久连接有一个BUG,数据库持久连接在创建完网站之后,默认是打开的,设置完站点的PHP后,即便数据库持久连接选择开启,保存之后也是关闭的,需要在OpenLiteSpeed的后台中手动设置开启。
手动设置开启数据库持久连接,登录OpenLiteSpeed后台,在虚拟主机中选择相对应的域名,在外部应用程序中将持久连接修改为是,然后右上角保存后,点击平滑重启,使设置生效,如果再次修改PHP配置,还需同样手动设置数据库持久连接。否则会一直是关闭状态。
编辑PHP配置
在菜单左侧PHP菜单中,点击编辑PHP配置。之后在基础中选择PHP版本
display_errors:Off
默认关闭,PHP错误输出
file_uploads:On
上传选项,默认打开。
allow_url_fopen:On
默认打开
allow_url_include:Off
默认关闭
allow_url_include为ON的话,则文件包含函数是可以加载远程文件的,这种漏洞被称为远程文件包含漏洞。利用远程文件包含漏洞可以直接执行任意命令。在实际渗透攻击过程中,攻击者可以在自己的Web服务器上放一个可执行的恶意文件,通过目标网站存在的远程文件包含漏洞来加载文件,从而实现执行任意命令的目的。
memory_limit:-1
脚本所能够申请到的最大内存(字节)(可以使用K和M作为单位)(必须大于 post_max_size 的值)
设为 -1 表示取消内存限制。
max_execution_time:0
每个脚本允许的最大执行时间(秒),0 表示没有限制。
该指令仅影响脚本本身的运行时间,任何其它花费在脚本运行之外的时间,例如 system()/sleep()函数、数据库查询、文件上传等,都不包括在内。
upload_max_filesize:1024M
允许上传的文件最大尺寸(必须小于 post_max_size 的值)。
post_max_size:1025M
允许接受的最大POST数据长度(字节)(“0″表示无限)。仅在 enable_post_data_reading = On 时有意义。
此设定也影响到文件上传(必须大于 upload_max_filesize 的值),如果POST数据超出限制,那么 $_POST 和 $_FILES 将会为空。
如果启用了内存限制,那么该值应当小于 memory_limit 的值。
max_input_time:-1
每个脚本接收输入数据(POST, GET, upload)的最大允许时间(秒)。
-1 表示不限制。在生产服务器上应该限制为一个明确的值以阻止脚本无限运行。
如果用户的网速较慢且需要上传大文件,那么应该设置一个较大的数值。对于 CLI 模式,此指令被硬编码为”-1″(没有限制)
PHP基础参数可以按需配置,上面的配置参数是无限制配置。
还有一项重要的配置,就是PHP同时上传多个文件的限制,点击PHP参数高级配置,直接在php.ini文件中修改上传限制。
在php.ini中查找 max_file_uploads = 20
修改为:
max_file_uploads = 2000
一次HTTP请求允许同时上传的最大文件数量。最大上传文件数2000,这个在采集更新网站时,上传图片需要用到。
php.ini 配置调优
默认安装的 PHP 就像是在百货商店里购买的普通套装,虽然合身,却不完美。调优的 PHP 就像是定做的套装,完全匹配你的尺寸。
下面是一些参考配置,酌情使用。
常规Wordpress需要的:
max_input_vars = 5000
限制最大表单提交,这个如果用的大型Wordpress主题,一般都要1000以上。
memory_limit = 512M
php脚本占用内存
post_max_size = 256M
限制post大小
upload_max_filesize = 128M
限制上传文件大小,就是Wordpress媒体库那个大小限制,这个尽量小于post_max_size
max_file_uploads = 20
限制同时最多上传数量
max_execution_time = 600
限制php最大执行时间
max_input_time = 600
限制php最大接收数据时间,这个可以是大于max_execution_time的
allow_url_fopen = Off
如果你网站程序用不到远程地址,可以关掉这个选项。
Opcache设置:
下面是Opcache的参考配置,按需设置。
opcache.enable=1 opcache.enable_cli=1 opcache.memory_consumption=256 #给opcache分配的内存 opcache.interned_strings_buffer=16 #分配的字符串驻留内存 opcache.max_accelerated_files=100000 opcache.max_wasted_percentage=5 opcache.use_cwd=1 opcache.validate_timestamps=1 #建议关闭,但是得手动清除缓存,太麻烦,所以开启,然后用下面的时间自动检测 opcache.revalidate_freq=60 #每1分钟检查一次 opcache.save_comments=0 opcache.fast_shutdown=1 opcache.consistency_checks=0
CyberPanel常见问题
总结了一些在CyberPanel安装使用过程中遇到的问题,希望在后续的迭代中能完善这些问题!
创建网站中遇到的域名SSL证书错误问题
在CyberPanel创建网站的时候,在域名选项中,提示了不要使用WWW,这将是自动创建的。
也就是说输入一级域名,会默认创建二级域名WWW,在CyberPanel默认为域名申请SSL证书时,会自动申请WWW和主域名的SSL证书,两个域名在一个证书中。
这本意是好的,方便使用者,无需申请WWW的证书,两个域名默认绑定在一个网站上。
这时候问题来了,如果使用者没有使用主域名建站,而是使用了WWW的域名创建了网站,那么主域名在申请域名证书时,不在WWW的域名证书中。
在域名别名中,添加主域名后,主域名被成功绑定在网站上,而这时候问题来了,在域名别名中申请的SSL证书生效后,WWW的域名证书失效了,再次申请WWW的证书后,主域名证书无效。
最终的问题是两个域名不在同一个证书内,即便是在配置中有添加SSL证书的选项,这个添加SSL证书,需要你在服务器上使用命令先申请ssl证书,然后再将Cert和Key手动粘贴在添加的SSL证书中,比较麻烦。
解决方法:在CyberPanel中重新建立一个主域名的网站,将WWW的网站内容备份,然后在主域名网站中恢复。
问题总结:绑定主域名后自动生成带有WWW域名的域名证书,CyberPanel中创建网站的域名一旦使用便无法修改,在修改网站的页面中也无法修改网站域名。
- 添加域名:只能添加子域名,子域名绑定的二级域名存放路径,在网站域名目录下。
- 域名别名:只能绑定除主域名之外的其它域名,您可以使用example.net访问与example.com相同的内容。
网站重定向的次数过多,该网页无法正常运作
一顿操作猛如虎,最后发现网站打不开了,提示重定向次数太多,只是设置的时候犹豫了一下,是使用WWW域名访问还是不使用WWW域名?简单的选择了几次模板,就遇到问题了。
原来问题出在选择模板上面。每选择一次模板,就会自动添加到配置文件中,也就是说,你选择一次WWW->NON-WWW然后再选择NON-WWW->WWW,就会添加两个规则,这两个规则就会造成死循环。
就出现了重定向次数过多的错误。
从逻辑思维来讲,当添加使用WWW访问后,再选择不使用WWW访问,应该是替换掉配置文件内的相关内容,而不是再添加不使用WWW访问的代码。这个应该算操作方面的BUG,虽然是人为操作产生的,但是从技术角度来说是可以完全避免的。
如果你的网站也因为重复添加模板内容,造成无法访问,可以复制下面内容到配置文件中,然后谨慎选择模板进行添加。
# BEGIN LSCACHE ## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ##RewriteEngine on CacheLookup on RewriteRule .* - [E=Cache-Control:no-autoflush] RewriteRule .litespeed_conf.dat - [F,L] ### marker CACHE RESOURCE start ### RewriteRule wp-content/.*/[^/]*(responsive|css|js|dynamic|loader|fonts).php - [E=cache-control:max-age=3600] ### marker CACHE RESOURCE end ### ### marker LOGIN COOKIE start ### RewriteRule .? - [E="Cache-Vary:,wp-postpass_9cb8b91dfeb87bdca7711a9e10329917"] ### marker LOGIN COOKIE end ### ### marker FAVICON start ### RewriteRule favicon.ico$ - [E=cache-control:max-age=86400] ### marker FAVICON end ### ### marker DROPQS start ### CacheKeyModify -qs:fbclid CacheKeyModify -qs:gclid CacheKeyModify -qs:utm* CacheKeyModify -qs:_ga ### marker DROPQS end ### ## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ## # END LSCACHE # BEGIN NON_LSCACHE ## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ## ## LITESPEED WP CACHE PLUGIN - Do not edit the contents of this block! ## # END NON_LSCACHE # BEGIN WordPress # The directives (lines) between "BEGIN WordPress" and "END WordPress" are # dynamically generated, and should only be modified via WordPress filters. # Any changes to the directives between these markers will be overwritten.RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
LiteSpeed Cache (LSCache) 如何设置自动爬虫
LSCache是WordPress中免费的缓存工具,安装量几百万,当然实际应用的并没有那么多,但是不可否认LiteSpeed web服务器的速度远远快于Nginx和Apache,这一点是毋庸置疑的。
在LSCache中设置自动爬虫,也就是预缓存需要修改服务器上的 .htaccess 配置文件,这一点对于菜鸟来说有一点难度。
详细说一下如何设置LSCache的预缓存功能。
第一步,在LiteSpeed Cache中点击Crawler菜单,然后点击 Sitemap Settings 选项
添加你站点的地图,可以是xml格式也可以是html格式。点击Save保存。
第二步,在General Settings中启用爬虫,将Crawler开关打开,选择ON
爬虫开关打开后,点击Map选项,点击 Refresh Crawler Map 读取地图。
然后在CyberPanel中设置,在CyberPanel中找到相应的网站,在网站配置选项中,点击重写规则。
这个规则就是.htaccess 配置文件。
在配置文件的最前面,加入下面代码
CacheEngine on crawler
修改完毕后,点击保存配置文件。然后耐心等待,爬虫会定时自动预缓存网页。
访问隐藏的 OpenLiteSpeed Web 界面
在服务器上输入下面的命令,重设OpenLiteSpeed用户密码。
sudo bash /usr/local/lsws/admin/misc/admpass.sh
输入用户名和密码,然后在浏览器中使用7080端口访问WebAdmin:https://ip:7080
如果网页无法打开,需要在CyberPanel的防火墙中开放7080端口。
升级 MariaDB
MariaDB和MySQL的区别在于:1、历史背景不同;2、存储引擎不同;3、数据类型不同;4、插件支持不同;5、开源程度不同。 整体对比来看,MariaDB相比MySQL有更多的新特性和改进,但也保留了与MySQL的高度兼容性。
要在 Ubuntu 22.04 上安装 MariaDB,首先更新系统软件包。之后,安装所需的软件包。
检查MariaDB版本现在,检查已安装的MariaDB的版本
mariadb --version
Ubuntu 22.04 上成功安装了 MariaDB 版本“10.6.12”
如果你的版本低于10.6.12的话,升级已安装的 MariaDB 的版本,使用下面命令来进行升级。
sudo mariadb-upgrade
如果是最新版本,会返回无需升级的提示信息。
This installation of MariaDB is already upgraded to 10.6.12-MariaDB.
There is no need to run mysql_upgrade again for 10.6.12-MariaDB.
You can use –force if you still want to run mysql_upgrade
升级 Redis
Ubuntu 20.4 / Ubuntu 22.4 用户将 Redis 更新到最新版本 – Redis 7.xx
检查当前安装的Redis服务器版本
redis-server --version
检查当前安装的 Redis cli 版本
redis-cli --version
将Redis更新到最新可用版本(首先添加官方repo)
sudo add-apt-repository ppa:redislabs/redis
然后运行系统更新命令
sudo apt update
运行下面命令升级最新版本Redis
sudo apt upgrade