wlnmp一键安装包php8.2使用指南(v2)

引言

本文档旨在提供关于在wlnmp一键安装包所支持的系统中安装、配置和启动PHP的详细指南。PHP作为一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。通过本文档,你将了解如何在你的系统上轻松安装、配置和管理PHP,从而为你的网站或应用程序提供稳定可靠的服务。

1. php8.2的安装与卸载

遵循wlnmp一键安装包官网“安装使用”教程。

1.1 添加epel源、crb源或epol源

如果当前非opencloudos9.x系统,则需要添加epel源,如下:

如果当前是AlmaLinux9.x、RockyLinux9.x系统,在添加epel源基础之上,还需额外开启crb源

如果当前是opencloudos9.x系统,仅需要添加epol源,如下:

注1:如果不添加epel或epol源,在安装php8.2时可能会提示nothing provides libiodbc.so.2()(64bit)、libsodium.so.26()(64bit)、libtidy.so.58()(64bit)等错误,这是因为该依赖包组在该源中。

注2:由于opencloudos9.x是自研系统,没有epel源,所以需要安装epol源,它并不是el9系列的兼容版本,而是一个独立的版本。

1.2 添加wlnmp源

1.3 安装php8.2

安装php8.2有以下两种方式

请注意,这两种方式只能任选其一。

区别在于,如果当前系统中已通过wlnmp源安装了其它版本的php,比如wphp81,那么此时想并存php8.2的版本,那么这里就安装wcphp82即可,这样wphp81和wcphp82同时并存。同理,如果再想安装别的php版本共存,同样的安装wc开头的php,比如wcphp56、wcphp71。

1.4 卸载php8.2

以下两种方式卸载,使用哪种方式卸载和你安装时使用的包有关

请注意,如果安装的是wphp82,那么卸载后在/usr/local/php/目录下,还会保留部分日志文件,如确定不再需要,可以对这个目录进行删除操作,即rm -rf /usr/local/php/,此时完美卸载完成,没有其它残留文件。

如果安装的是wcphp82,那么卸载后在/usr/local/php82/目录下,还会保留部分日志文件,如确定不再需要,可以对这个目录进行删除操作,即rm -rf /usr/local/php82/,此时完美卸载完成,没有其它残留文件。

1.5 升级php8.2

以下两种方式升级,使用哪种方式升级和你安装时使用的包有关

请注意,当wlnmp一键安装包有更新时,可直接升级,升级前请做好重要数据备份,避免由于某些原因导致升级失败,升级时不会覆盖原有正在使用的配置文件,但会导致php8.2服务重启。

1.6 查询php8.2所包含的文件

我们可以通过rpm -ql wphp82或rpm -ql wcphp82来查看。

2. php8.2的配置

2.1 配置文件目录

遵循标准编译路径配置,默认php8.2配置目录在/usr/local/php/或/usr/local/php82/下。

2.2 禁用的函数

为了增强PHP的安全性,防止恶意用户利用这些函数进行一些危险的操作,默认禁用了一些函数,在/usr/local/php/etc/php.ini或/usr/local/php82/etc/php.ini中

2.3 默认包含的模块

可通过php -m或php82 -m查看,也可访问https://www.wlnmp.com/php_extension

2.4 添加额外的模块

在安装php8.2后想安装额外的模块,可参考https://blog.whsir.com/post-7501.html

3. 启动和管理php8.2

wlnmp一键安装包所安装的php8.2,支持传统的SysV和现代的systemd两种管理方式,并且可以通用。

3.1 查询php8.2状态

wphp82启动状态可以使用以下两种命令(任选其一)

wcphp82启动状态可以使用以下两种命令(任选其一)

3.2 停止php8.2

wphp82停止可以使用以下两种命令(任选其一)

wcphp82停止可以使用以下两种命令(任选其一)

3.3 启动php8.2

wphp82启动可以使用以下两种命令(任选其一)

wcphp82启动可以使用以下两种命令(任选其一)

注1:默认安装完成php8.2后,服务不会自动启动,请使用上面命令启动。

注2:并没有明确要求用哪种方式启动管理php8.2,你可以通过/etc/init.d/php-fpm82 start,然后systemctl stop php-fpm82停止,请结合个人喜好进行选择,推荐使用/etc/init.d/方式,因为可以通过TAB命令补全。

4. 结论

通过本文档,可以详细的了解到php8.2的包安装、配置和管理等,请根据你的实际需求进行配置和调整,了解php8.2软件更多信息,请参阅php8.2官方文档或其它相关资源。

本文档结合实际情况及使用需求不定期进行更新,对于有一定Linux运维经验的用户来说,非常容易上手。

wlnmp一键安装包php8.3使用指南(v2)

引言

本文档旨在提供关于在wlnmp一键安装包所支持的系统中安装、配置和启动PHP的详细指南。PHP作为一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。通过本文档,你将了解如何在你的系统上轻松安装、配置和管理PHP,从而为你的网站或应用程序提供稳定可靠的服务。

1. php8.3的安装与卸载

遵循wlnmp一键安装包官网“安装使用”教程。

1.1 添加epel源、crb源或epol源

如果当前非opencloudos9.x系统,则需要添加epel源,如下:

如果当前是AlmaLinux9.x、RockyLinux9.x系统,在添加epel源基础之上,还需额外开启crb源

如果当前是opencloudos9.x系统,仅需要添加epol源,如下:

注1:如果不添加epel或epol源,在安装php8.3时可能会提示nothing provides libiodbc.so.2()(64bit)、libsodium.so.26()(64bit)、libtidy.so.58()(64bit)等错误,这是因为该依赖包组在该源中。

注2:由于opencloudos9.x是自研系统,没有epel源,所以需要安装epol源,它并不是el9系列的兼容版本,而是一个独立的版本。

1.2 添加wlnmp源

1.3 安装php8.3

安装php8.3有以下两种方式

请注意,这两种方式只能任选其一。

区别在于,如果当前系统中已通过wlnmp源安装了其它版本的php,比如wphp81,那么此时想并存php8.3的版本,那么这里就安装wcphp83即可,这样wphp81和wcphp83同时并存。同理,如果再想安装别的php版本共存,同样的安装wc开头的php,比如wcphp56、wcphp71。

1.4 卸载php8.3

以下两种方式卸载,使用哪种方式卸载和你安装时使用的包有关

请注意,如果安装的是wphp83,那么卸载后在/usr/local/php/目录下,还会保留部分日志文件,如确定不再需要,可以对这个目录进行删除操作,即rm -rf /usr/local/php/,此时完美卸载完成,没有其它残留文件。

如果安装的是wcphp83,那么卸载后在/usr/local/php83/目录下,还会保留部分日志文件,如确定不再需要,可以对这个目录进行删除操作,即rm -rf /usr/local/php83/,此时完美卸载完成,没有其它残留文件。

1.5 升级php8.3

以下两种方式升级,使用哪种方式升级和你安装时使用的包有关

请注意,当wlnmp一键安装包有更新时,可直接升级,升级前请做好重要数据备份,避免由于某些原因导致升级失败,升级时不会覆盖原有正在使用的配置文件,但会导致php8.3服务重启。

1.6 查询php8.3所包含的文件

我们可以通过rpm -ql wphp83或rpm -ql wcphp83来查看。

2. php8.3的配置

2.1 配置文件目录

遵循标准编译路径配置,默认php8.3配置目录在/usr/local/php/或/usr/local/php83/下。

2.2 禁用的函数

为了增强PHP的安全性,防止恶意用户利用这些函数进行一些危险的操作,默认禁用了一些函数,在/usr/local/php/etc/php.ini或/usr/local/php83/etc/php.ini中

2.3 默认包含的模块

可通过php -m或php83 -m查看,也可访问https://www.wlnmp.com/php_extension

2.4 添加额外的模块

在安装php8.3后想安装额外的模块,可参考https://blog.whsir.com/post-7501.html

3. 启动和管理php8.3

wlnmp一键安装包所安装的php8.3,支持传统的SysV和现代的systemd两种管理方式,并且可以通用。

3.1 查询php8.3状态

wphp83启动状态可以使用以下两种命令(任选其一)

wcphp83启动状态可以使用以下两种命令(任选其一)

3.2 停止php8.3

wphp83停止可以使用以下两种命令(任选其一)

wcphp83停止可以使用以下两种命令(任选其一)

3.3 启动php8.3

wphp83启动可以使用以下两种命令(任选其一)

wcphp83启动可以使用以下两种命令(任选其一)

注1:默认安装完成php8.3后,服务不会自动启动,请使用上面命令启动。

注2:并没有明确要求用哪种方式启动管理php8.3,你可以通过/etc/init.d/php-fpm83 start,然后systemctl stop php-fpm83停止,请结合个人喜好进行选择,推荐使用/etc/init.d/方式,因为可以通过TAB命令补全。

4. 结论

通过本文档,可以详细的了解到php8.3的包安装、配置和管理等,请根据你的实际需求进行配置和调整,了解php8.3软件更多信息,请参阅php8.3官方文档或其它相关资源。

本文档结合实际情况及使用需求不定期进行更新,对于有一定Linux运维经验的用户来说,非常容易上手。

wlnmp一键安装包OpenResty使用指南(v1)

引言

本文档旨在提供关于在wlnmp一键安装包所支持的系统中安装、配置和启动OpenResty的详细指南。OpenResty是一个基于Nginx的Web平台,可以使用其LuaJIT引擎运行Lua脚本,在互联网领域得到广泛应用。通过本文档,你将了解如何在你的系统上轻松安装、配置和管理OpenResty,从而为你的网站或应用程序提供稳定可靠的服务。

请注意,OpenResty是基于Nginx的一个变种,因此在本文档中,许多命令和配置都与Nginx类似。在操作OpenResty时,你可以使用Nginx的命令和配置方式进行管理。

1. openresty的安装与卸载

遵循wlnmp一键安装包官网“安装使用”教程。

1.1 添加epel源

请注意,如果不添加epel源,在安装openresty时可能会提示nothing provides libprofiler.so.0()(64bit)错误,这是因为有些依赖包组在epel源中。

1.2 添加wlnmp源

1.3 安装openresty

请注意,同类型的web服务器软件在系统中同时仅可以存在一个,比如装了openresty就不能装nginx,默认openresty中已集成lua模块。

1.4 卸载openresty

请注意,卸载后在/usr/local/nginx/和/data/logs/nginx/目录下,还会保留部分配置、日志文件,如确定不再需要,可以对这两个目录进行删除操作,即rm -rf /usr/local/nginx/ /data/logs/nginx/,此时完美卸载完成,没有其它残留文件。

1.5 升级openresty

请注意,当wlnmp一键安装包有更新时,可直接通过yum update wopenresty方式直接升级,升级前请做好重要数据备份,避免由于某些原因导致升级失败,升级时不会覆盖原有正在使用的配置文件,但会导致openresty服务重启。

1.6 查询openresty所包含的文件

我们可以通过rpm -ql wopenresty来查看,wopenresty包产生了哪些文件。

2. openresty的配置

2.1 配置文件目录

遵循标准编译路径配置,默认openresty配置目录在/usr/local/nginx/下。

2.2 配置php支持

在/usr/local/nginx/conf/vhost/demo.conf中启用include enable-phpXX.conf;字段即可,需要哪个版本的php就启用哪个,如果已删除了demo.conf文件,可在需要的server字段中增加。

include enable-php56.conf;
include enable-php70.conf;
include enable-php71.conf;
include enable-php72.conf;
include enable-php73.conf;
include enable-php74.conf;
include enable-php8.conf;
include enable-php81.conf;
include enable-php82.conf;
include enable-php83.conf;

2.3 默认包含的模块

可通过nginx -V进行查看,截至本文档发文,目前openresty所支持的模块如下

nginx version: openresty/1.25.3.1
built by gcc 8.5.0 20210514 (Red Hat 8.5.0-20) (GCC)
built with OpenSSL 3.0.13+quic 30 Jan 2024
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-cc-opt='-O2 -O2 -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC -fstack-clash-protection -I./openssl-openssl-3.0.13-quic1/include' --add-module=../ngx_devel_kit-0.3.3 --add-module=../echo-nginx-module-0.63 --add-module=../xss-nginx-module-0.06 --add-module=../ngx_coolkit-0.2 --add-module=../set-misc-nginx-module-0.33 --add-module=../form-input-nginx-module-0.12 --add-module=../encrypted-session-nginx-module-0.09 --add-module=../srcache-nginx-module-0.33 --add-module=../ngx_lua-0.10.26 --add-module=../ngx_lua_upstream-0.07 --add-module=../headers-more-nginx-module-0.37 --add-module=../array-var-nginx-module-0.06 --add-module=../memc-nginx-module-0.20 --add-module=../redis2-nginx-module-0.15 --add-module=../redis-nginx-module-0.3.9 --add-module=../rds-json-nginx-module-0.16 --add-module=../rds-csv-nginx-module-0.09 --add-module=../ngx_stream_lua-0.0.14 --with-ld-opt='-Wl,-rpath,/usr/local/luajit/lib -Wl,-rpath,$LUAJIT_LIB -Wl,-z,relro -Wl,-z,now -L./openssl-openssl-3.0.13-quic1/lib' --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-http_realip_module --with-google_perftools_module --with-stream --with-http_mp4_module --with-http_flv_module --with-http_gunzip_module --with-http_image_filter_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_slice_module --with-http_stub_status_module --with-http_xslt_module --with-mail --with-mail_ssl_module --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_secure_link_module --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-select_module --with-http_v3_module --with-openssl=/root/rpmbuild/BUILD/wopenresty-1.25.3.1/openssl-openssl-3.0.13-quic1 --with-openssl-opt=-g --with-stream --without-pcre2

2.4 日志转储

已集成logrotate日志转储,默认log日志请指向/data/logs/nginx/目录下,并以.log结尾,通过/etc/logrotate.d/nginx预设的规则,所有以.log结尾的日志文件将在每天执行一次(通常在凌晨,没有固定的时间),保留最新的10个日志文件,旧的日志文件将被压缩并追加日期,同时发送信号给openresty进程以切换到新的日志文件。

3. 启动和管理openresty

wlnmp一键安装包所安装的openresty,支持传统的SysV和现代的systemd两种管理方式,并且可以通用。

3.1 查询openresty状态

查询openresty启动状态可以使用以下两种命令(任选其一)

3.2 停止openresty

停止openresty可以使用以下两种命令(任选其一)

3.3 启动openresty

启动openresty可以使用以下两种命令(任选其一)

注1:在1.25.3.1之前,默认安装完成openresty后会自动启动服务,从1.25.3.1开始之后,默认安装完成openresty后服务不会自动启动。

注2:并没有明确要求用哪种方式启动管理openresty,你可以通过/etc/init.d/nginx start,然后systemctl stop nginx停止,请结合个人喜好进行选择,推荐使用/etc/init.d/nginx方式,因为可以通过TAB命令补全。

4. 结论

通过本文档,可以详细的了解到openresty的包安装、配置和管理等,请根据你的实际需求进行配置和调整,了解openresty软件更多信息,请参阅openresty官方文档或其它相关资源。

本文档结合实际情况及使用需求不定期进行更新,对于有一定Linux运维经验的用户来说,非常容易上手。

wlnmp一键安装包Tengine使用指南(v1)

引言

本文档旨在提供关于在wlnmp一键安装包所支持的系统中安装、配置和启动Tengine的详细指南。Tengine是基于Nginx的一个高性能的Web服务器和反向代理服务器,在互联网领域得到广泛应用。通过本文档,你将了解如何在你的系统上轻松安装、配置和管理Tengine,从而为你的网站或应用程序提供稳定可靠的服务。

请注意,Tengine是基于Nginx的一个变种,因此在本文档中,许多命令和配置都与Nginx类似。在操作Tengine时,你可以使用Nginx的命令和配置方式进行管理。

1. tengine的安装与卸载

遵循wlnmp一键安装包官网“安装使用”教程。

1.1 添加epel源

请注意,如果不添加epel源,在安装tengine时可能会提示nothing provides libprofiler.so.0()(64bit)错误,这是因为有些依赖包组在epel源中。

1.2 添加wlnmp源

1.3 安装tengine

请注意,同类型的web服务器软件在系统中同时仅可以存在一个,比如装了tengine就不能装nginx,默认tengine中已集成lua模块,在安装tengine时会同时安装wluaJIT2包。

1.4 卸载tengine

请注意,卸载后在/usr/local/nginx/和/data/logs/nginx/目录下,还会保留部分配置、日志文件,如确定不再需要,可以对这两个目录进行删除操作,即rm -rf /usr/local/nginx/ /data/logs/nginx/,此时完美卸载完成,没有其它残留文件。

1.5 升级tengine

请注意,当wlnmp一键安装包有更新时,可直接通过yum update wtengine方式直接升级,升级前请做好重要数据备份,避免由于某些原因导致升级失败,升级时不会覆盖原有正在使用的配置文件,但会导致tengine服务重启。

1.6 查询tengine所包含的文件

我们可以通过rpm -ql wtengine来查看,wtengine包产生了哪些文件。

2. tengine的配置

2.1 配置文件目录

遵循标准编译路径配置,默认tengine配置目录在/usr/local/nginx/下。

2.2 配置php支持

在/usr/local/nginx/conf/vhost/demo.conf中启用include enable-phpXX.conf;字段即可,需要哪个版本的php就启用哪个,如果已删除了demo.conf文件,可在需要的server字段中增加。

include enable-php56.conf;
include enable-php70.conf;
include enable-php71.conf;
include enable-php72.conf;
include enable-php73.conf;
include enable-php74.conf;
include enable-php8.conf;
include enable-php81.conf;
include enable-php82.conf;
include enable-php83.conf;

2.3 默认包含的模块

可通过nginx -V进行查看,截至本文档发文,目前tengine所支持的模块如下

Tengine version: Tengine/3.1.0
nginx version: nginx/1.24.0
built by gcc 8.5.0 20210514 (Red Hat 8.5.0-20) (GCC)
built with OpenSSL 3.0.13 30 Jan 2024
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --add-module=ngx_devel_kit-0.3.2 --add-module=lua-nginx-module-0.10.24 --with-cc-opt='-O2 -fstack-protector-strong -mtune=generic -fstack-clash-protection' --with-ld-opt='-Wl,-rpath,$LUAJIT_LIB -Wl,-z,relro -Wl,-z,now' --add-module=ngx_cache_purge-2.3 --with-http_realip_module --with-google_perftools_module --with-stream --with-openssl=openssl-3.0.13 --without-pcre2 --with-http_mp4_module --with-http_flv_module --with-http_gunzip_module --with-http_image_filter_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_slice_module --with-http_stub_status_module --with-http_xslt_module --with-mail --with-mail_ssl_module --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_secure_link_module --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --add-module=njs-0.8.3/nginx --with-select_module

2.4 日志转储

已集成logrotate日志转储,默认log日志请指向/data/logs/nginx/目录下,并以.log结尾,通过/etc/logrotate.d/nginx预设的规则,所有以.log结尾的日志文件将在每天执行一次(通常在凌晨,没有固定的时间),保留最新的10个日志文件,旧的日志文件将被压缩并追加日期,同时发送信号给tengine进程以切换到新的日志文件。

3. 启动和管理tengine

wlnmp一键安装包所安装的tengine,支持传统的SysV和现代的systemd两种管理方式,并且可以通用。

3.1 查询tengine状态

查询tengine启动状态可以使用以下两种命令(任选其一)

3.2 停止tengine

停止tengine可以使用以下两种命令(任选其一)

3.3 启动tengine

启动tengine可以使用以下两种命令(任选其一)

请注意,并没有明确要求用哪种方式启动管理tengine,你可以通过/etc/init.d/nginx start,然后systemctl stop nginx停止,请结合个人喜好进行选择,推荐使用/etc/init.d/nginx方式,因为可以通过TAB命令补全。

4. 结论

通过本文档,可以详细的了解到tengine的包安装、配置和管理等,请根据你的实际需求进行配置和调整,了解tengine软件更多信息,请参阅tengine官方文档或其它相关资源。

本文档结合实际情况及使用需求不定期进行更新,对于有一定Linux运维经验的用户来说,非常容易上手。

wlnmp一键安装包Nginx使用指南(v2)

引言

本文档旨在提供关于在wlnmp一键安装包所支持的系统中安装、配置和启动Nginx的详细指南。Nginx作为一款高性能的Web服务器和反向代理服务器,广泛应用于互联网领域。通过本文档,你将了解到如何在你的系统上轻松安装、配置和管理Nginx,从而为你的网站或应用程序提供稳定可靠的服务。

1. nginx的安装与卸载

遵循wlnmp一键安装包官网“安装使用”教程。

1.1 添加epel源或epol源

如果你是CentOS7.x、Alibaba CloudLinux 2、Alibaba CloudLinux 3、AlmaLinux8.x、AnolisOS8.x、CentOS8.x、OpenCloudOS8.x、RockyLinux8.x、AlmaLinux9.x、RockyLinux9.x系统可以直接执行以下命令安装epel源。

如果你是OpenEuler 20.03(SP1~SP4)、OpenEuler 22.03(SP1~SP3)系统可以通过以下命令安装epel源(注:OpenEuler24.03 无需添加epel源,直接添加wlnmp源即可使用)。

如果你是opencloudos9.x系统,需要安装epol源,因为opencloudos9.x并不是红帽9的兼容版本。

请注意,如果不添加epel或epol源,在安装nginx时可能会提示nothing provides libprofiler.so.0()(64bit)错误,这是因为有些依赖包组在epel源中。

1.2 添加wlnmp源

1.3 安装nginx

请注意,同类型的web服务器软件在系统中同时仅可以存在一个,比如装了nginx就不能装Apache httpd,默认nginx中已集成lua模块,在安装nginx时会同时安装wluaJIT2包。

1.4 卸载nginx

请注意,卸载后在/usr/local/nginx/和/data/logs/nginx/目录下,还会保留部分配置、日志文件,如确定不再需要,可以对这两个目录进行删除操作,即rm -rf /usr/local/nginx/ /data/logs/nginx/,此时完美卸载完成,没有其它残留文件。

1.5 升级nginx

请注意,当wlnmp一键安装包有更新时,可直接通过yum update wnginx方式直接升级,升级前请做好重要数据备份,避免由于某些原因导致升级失败,升级时不会覆盖原有正在使用的配置文件,但会导致nginx服务重启。

1.6 查询nginx所包含的文件

我们可以通过rpm -ql wnginx来查看,wnginx包产生了哪些文件。

2. nginx的配置

2.1 配置文件目录

遵循标准编译路径配置,默认nginx配置目录在/usr/local/nginx/下。

2.2 配置php支持

在/usr/local/nginx/conf/vhost/demo.conf中启用include enable-phpXX.conf;字段即可,需要哪个版本的php就启用哪个,如果已删除了demo.conf文件,可在需要的server字段中增加。

include enable-php56.conf;
include enable-php70.conf;
include enable-php71.conf;
include enable-php72.conf;
include enable-php73.conf;
include enable-php74.conf;
include enable-php8.conf;
include enable-php81.conf;
include enable-php82.conf;
include enable-php83.conf;

2.3 默认包含的模块

可通过nginx -V进行查看,截至本文档发文,目前nginx所支持的模块如下

nginx version: nginx/1.26.0
built by gcc 8.5.0 20210514 (Red Hat 8.5.0-20) (GCC)
built with OpenSSL 3.0.13+quic 30 Jan 2024
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --add-module=ngx_devel_kit-0.3.2 --add-module=lua-nginx-module-0.10.24 --with-cc-opt='-O2 -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC -fstack-clash-protection -I./openssl-openssl-3.0.13-quic1/include' --with-ld-opt='-Wl,-rpath,$LUAJIT_LIB -Wl,-z,relro -Wl,-z,now -L./openssl-openssl-3.0.13-quic1/lib' --add-module=ngx_cache_purge-2.3 --with-google_perftools_module --with-stream --without-pcre2 --with-http_mp4_module --with-http_flv_module --with-http_gunzip_module --with-http_image_filter_module --with-http_random_index_module --with-http_realip_module --with-http_slice_module --with-http_xslt_module --with-mail --with-mail_ssl_module --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_secure_link_module --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --add-module=njs-0.8.3/nginx --with-select_module --add-module=nginx-rtmp-module --with-http_v3_module --with-openssl=openssl-openssl-3.0.13-quic1

2.4 日志转储

已集成logrotate日志转储,默认log日志请指向/data/logs/nginx/目录下,并以.log结尾,通过/etc/logrotate.d/nginx预设的规则,所有以.log结尾的日志文件将在每天执行一次(通常在凌晨,没有固定的时间),保留最新的10个日志文件,旧的日志文件将被压缩并追加日期,同时发送信号给Nginx进程以切换到新的日志文件。

3. 启动和管理nginx

wlnmp一键安装包所安装的nginx,支持传统的SysV和现代的systemd两种管理方式,并且可以通用。

3.1 查询nginx状态

查询nginx启动状态可以使用以下两种命令(任选其一)

3.2 停止nginx

停止nginx可以使用以下两种命令(任选其一)

3.3 启动nginx

启动nginx可以使用以下两种命令(任选其一)

注1:在1.26.0之前,默认安装完成nginx后会自动启动服务,从1.26.0版本之后,默认安装完成nginx后服务不会自动启动。

注2:并没有明确要求用哪种方式启动管理nginx,你可以通过/etc/init.d/nginx start启动,然后systemctl stop nginx停止,请结合个人喜好进行选择,推荐使用/etc/init.d/nginx方式,因为可以通过TAB命令补全。

4. 结论

通过本文档,可以详细的了解到nginx的包安装、配置和管理等,请根据你的实际需求进行配置和调整,了解nginx软件更多信息,请参阅nginx官方文档或其它相关资源。

本文档结合实际情况及使用需求不定期进行更新,对于有一定Linux运维经验的用户来说,非常容易上手。

基于wlnmp一键安装包做MySQL主从

本文基于RockyLinux8.9系统,使用传统异步方式来做MySQL主从同步,本文中所使用的MySQL版本为8.0.35,配置过程中不影响主库的正常运行,请确保主从服务器时间一致性,防火墙相应的规则已配置。

MySQL主从为什么不用master、slave了,以及主从复制原理见:https://blog.whsir.com/post-7332.html

MySQL主(SOURCE):10.10.10.161
MySQL从(REPLICA):10.10.10.162

MySQL主(SOURCE)配置

1、添加wlnmp和epel源

2、安装MySQL

3、创建数据库whsir以及测试表(作为演示用)

注意wlnmp一键安装包安装的MySQL密码为空

4、创建用户并授权从库可以读取日志文件

5、刷新查看用户权限

查看zhu账号是否生效

6、备份库

--single-transaction:该选项确保在备份时使用事务,这样可以保证备份的一致性,而不会锁定整个数据库。

--source-data=2:这个选项用于在输出文件中包含二进制日志坐标信息,二进制日志坐标信息是主从复制中用于同步的关键信息,这里数字“2”表示包含二进制日志文件名和位置。

7、备份库拷贝至从库上

把备份好的库拷贝到从库,你可以scp传过去,也可下载到本地再传到从库上。

8、查看备份文件whsir.sql的binlog和pos值,记录下来,从库配置时用

MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=1274;

9、连通性验证

为了确保主库的账户配置正确以及主从服务器的连通性,我们在从服务器上连接下主的库,确保可以正常连通,再进行下一步

至此主库配置完毕。

MySQL从(REPLICA)配置

1、修改my.cnf文件

wlnmp一键安装包安装的MySQL数据库,默认server-id = 100,从库的server-id值一定要大于主库的。

修改从库my.cnf中的server-id

指定复制的库和表,此处%表示通配所有

增加只读参数

2、重启从库的MySQL

3、创建whsir库

4、导入whsir.sql

5、配置主从同步

这里的MASTER_LOG_FILE和MASTER_LOG_POS值,就是前面提到的binlog和pos,MASTER_CONNECT_RETRY是连接失败后等待的秒数。

6、查看同步状态

如果看到以下两项都是yes表示主从配置成功

Replica_IO_Running: Yes
Replica_SQL_Running: Yes

如果看到以下等于0表示主从没有延迟

Seconds_Behind_Source: 0

7、最后在从库上创建一个只读权限的帐号

 

yum安装php8.3

php8.3.0近日已正式发布,wlnmp一键安装包也第一时间做了适配,通过wlnmp一键安装包提供的源,可yum一键安装完成php8.3.0。

安装方法,以CentOS7为例

1、配置epel源

2、添加wlnmp源

3、安装php8.3.0

安装后默认启动php8.3.0

4、启动停止服务

5、安装路径查看

更多系统版本wlnmp的源请访问官网查看:https://www.wlnmp.com/install

wlnmp一键安装包使用详解

软件包格式组成

例如wmysql8

这里的w表示wlnmp一键安装包的首字符,所有wlnmp一键安装包提供的包组,均是以w开头
mysql8就是软件名称+软件大版本号,这个软件名称和软件大版本号,可通过版本支持(https://www.wlnmp.com/release)中的软件名称查看。

例如wnginx

由于一些软件不存在大版本长期维护更新情况,所以像是nginx、keepalived等无需指定版本号。
例如wcphp74、wcmysql8。

这里的w表示wlnmp一键安装包的首字符,c表示多副本意思,所以以wc开头的包组是可以多版本并存安装的。

软件多版本并存

多版本并存表示在同一系统内,存在多个不同的软件版本,同时并行存在,互不影响。

截至目前多版本并存支持php、MySQL全系列版本,即(php5.6/php7.0/php7.1/php7.2/php7.3/php7.4/php8.0/php8.1/php8.2/php8.3/MySQL5.5/MySQL5.6/MySQL5.7/MySQL8.0/MariaDB10.4/MariaDB10.5/MariaDB10.6/MariaDB10.11)

安装方式见:https://www.wlnmp.com/post-1977.html

软件包安装路径

所有软件包组安装的路径,默认都遵循标准位置即/usr/local,如/usr/local/nginx。

详细内容可用rpm -ql来查看,如rpm -ql wnginx。

MySQL数据存放在/data目录下,日志路径请查看各个软件包的配置文件。

软件包更新卸载

通过wlnmp一键安装包安装的所有软件,均可支持yum update平滑升级、yum remove完美卸载操作。
yum update升级注意事项:

1、虽然理论上yum update升级不会有什么问题,但还是建议用户升级前做好备份,避免某些特殊原因所导致升级失败影响正常业务使用。

2、执行update升级时,一定会重启当前所要升级的软件,所以升级前可考虑先停止服务,再执行升级。

3、执行update升级时配置文件注意事项

  • 如果当前软件的配置文件(如MySQL的my.cnf,php的php-fpm.conf等)从未更改过,那么升级时,可能会对配置文件有所改变。
  • 如果当前软件的配置文件改变过,那么升级时,不会对当前配置文件内容有所改变。

4、执行yum remove卸载操作时,出于数据安全考虑,MySQL会保留/data目录下的数据文件。

5、卸载MySQL当前版本后,再安装其他版本时,注意卸载时的残留文件,通常要注意/data下的数据目录。

  • 例如:当前卸载了MySQL8版本,卸载后要安装MySQL57版本,那么/data目录下MySQL的数据文件一定要清除,或将数据目录改名移走,不然会造成冲突。

6、其他软件版本执行卸载,通常不会有所残留。

软件包启动停止

通过wlnmp一键安装包安装的所有软件,启动停止脚本均在/etc/init.d/目录下,也可使用systemctl或service来启动停止软件。

例1:启动php74执行/etc/init.d/php-fpm74 start或systemctl start php-fpm74

例2:直接执行/etc/init.d/php-fpm74会提示可选操作,即Usage: /etc/init.d/php-fpm74 {start|stop|force-quit|restart|reload|status|configtest}

php、MySQL多版本并存安装

在按照wlnmp一键安装包官网教程:https://www.wlnmp.com/install添加wlnmp源后如何安装多个php、MySQL版本并存,本文做一个详细说明。

已有wlnmp安装的php和MySQL安装多版本并存方法:

如果你当前正在使用wlnmp一键安装包安装的php和MySQL,请先将php和MySQL升级到最新版本(如果是在2023年6月22日后安装的php和MySQL非必须升级)。

例:假设你当前通过wlnmp一键安装包已安装了php7.4、MySQL5.7的版本,此时要安装php8和MySQL8版本,则直接执行以下安装命令即可。

那么此时,你当前系统就同时并存了php7.4、MySQL5.7、php8、MySQL8版本,如果你还想安装php56、MySQL5.5则继续执行以下命令即可。

那么此时,你当前系统就并存了php5.6、php7.4、php8、MySQL5.5、MySQL5.7、MySQL8版本。

建议:安装完成后重新登录一次系统,使其变量生效,或直接执行exec bash命令。

注意:同一个版本只能存在一个,如果不需要哪个版本了,直接执行yum remove卸载即可,MySQL卸载时,默认会保留MySQL目录下的数据,所以确定MySQL数据不要的情况下,需要手动删除/data下对应的MySQL目录。

全新系统安装php和MySQL多版本并存方法:

如果你当前正在使用的系统没有通过wlnmp一键安装包安装过php、MySQL或已通过yum remove卸载了,那么你可以直接通过yum install安装wc开头的php、MySQL包组。

例:当然系统没有php和MySQL,想要安装php5.6、php7.4、php8.1,MySQL5.5、MySQL5.7,则直接执行以下安装命令即可。

那么此时,你当前系统就并存了php5.6、php7.4、php8.1、MySQL5.5、MySQL5.7版本。

建议:安装完成后重新登录一次系统,使其变量生效,或直接执行exec bash命令。

注意:同一个版本只能存在一个,如果不需要哪个版本了,直接执行yum remove卸载即可,MySQL卸载时,默认会保留MySQL目录下的数据,所以确定MySQL数据不要的情况下,需要手动删除/data下对应的MySQL目录。

CentOS8安装ntp同步时间

在CentOS8中默认不再支持ntp软件包,时间同步将由chrony来实现,如果你习惯了使用ntp来同步时间,一时难以去适应chrony。

本文将通过wlnmp提供的源,来安装ntp服务

添加wlnmp源

安装ntp服务

使用ntpdate进行时间同步