VPS教程

Centmin Mod国外优秀的LNMP一键建站工具-优化ngx_pagespeed和WebP

Centmin Mod是国外一个非常有名的LNMP一键安装脚本工具,貌似国外用户比较多,而且功能不断在更新,也越来越完善。最初注意到Centmin Mod,是因为Centmin Mod自带了ngx_pagespeed + Lua/LuaJIT,这两个如果手动安装真的折腾人。

后来发现Centmin Mod提供了Nginx自适应WebP的配置,这对于想要实现WebP格式图片访问的用户来说是非常有用的。Centmin Mod目前支持安装的是Nginx, MariaDB, PHP-FPM & CSF Firewall,且仅限于CentOS 6 & 7操作系统,其它的操作系统不能使用。

这篇文章就来分享一下Centmin Mod安装与使用教程,如果你不喜欢使用命令工具的话,可以使用免费VPS主机面板:服务器控制面板榜单。更多的一键建站脚本工具这里还有:

  1. Oneinstack从入门到精通-Oneinstack安装与使用教程收集整理
  2. LNMP 1.6安装与使用-自动开启TLS 1.3和支持PHP 7.3\MariaDB 10.3
  3. LAMP.sh一键安装包轻松搭建Apache建站环境-自动安装SSL和PHP组件

PS:更新记录.

1、Wordpress启用WebP不仅可以加快访问速度,还可以节省流量,参考:WordPress自适应WebP格式图片加速方法-Nginx,WP插件和CDN三种方式。2021.2.23

2、建站离不开PHP探针,这里有PHP探针汇总:分享八个优秀的免费PHP探针-实时检测PHP信息,服务器运行和流量。2021.1.13

一、Centmin Mod安装须知

网站:

  1. https://centminmod.com/

Centmin Mod主要特性:

Nginx方面:Nginx 1.17.x (https / SPDY SSL / HTTP/2 SSL + HTTP/2 Server Push + ngx_pagespeed + Lua/LuaJIT support)

PHP方面:PHP-FPM 5.5.38 + Zend OpCache (support PHP 5.3-5.6, & PHP 7.0 & PHP 7.1-7.3 in latest Beta)

数据库方面:MariaDB 10.0.x MySQL performance fork (MariaDB 10.3.x latest Beta)

PHP缓存方面:PHP opcode cache: Zend OpCache 7.0.5+, APC Cache 3.13, Xcache 3.2.0

数据库缓存:Memcached Server 1.5.x + Memcache 3.0.8+ PHP Extension

数据库缓存:Libmemcached 1.0.18 + Memcached 2.2.0 PHP Extension

压缩:Multi-threaded compression: pigz, pbzip2, lbzip2, plzip, p7zip (optional)

安全防火墙:CSF Firewall

文件管理:Pure-FTPD Virtual FTP User support

其它:免费SSL证书Letsencrypt 和谷歌BR优化 Nginx Brotli Compression

需要注意的是Centmin Mod目前安装的数据库是MariaDB ,虽然与Mysql数据库99%是一致的,如果你的数据库依赖于Mysql,可能还要考虑一下数据库的兼容问题。

二、Centmin Mod安装过程

进入你的CentOS,使用以下命令安装(123.09beta01)

yum -y update; curl -O https://centminmod.com/betainstaller73.sh && chmod 0700 betainstaller73.sh && bash betainstaller73.sh

以上命令将直接安装PHP7.3,如果你不想用PHP7.3,下面还有几个选择:

yum -y update; curl -O https://centminmod.com/betainstaller7.sh && chmod 0700 betainstaller7.sh && bash betainstaller7.sh
yum -y update; curl -O https://centminmod.com/betainstaller71.sh && chmod 0700 betainstaller71.sh && bash betainstaller71.sh
yum -y update; curl -O https://centminmod.com/betainstaller72.sh && chmod 0700 betainstaller72.sh && bash betainstaller72.sh

稍等一会儿,Centmin Mod就会自动安装完成了,把最后输出的数据库账号及密码等重要信息记下来。

--------------------------------------------------------
*************************************************
* Centmin Mod install completed....
*************************************************

*************************************************
*  Setup memcached_*.php admin page ...
*************************************************

Setup Memcached Server Admin Login Details for /usr/local/nginx/html/memcache_3e845725.php
current memcached username: memcacheuser
current memcached password: memcachepass
*************************************************
Memcached Server Admin Login: /usr/local/nginx/html/memcache_3e845725.php
new memcached username: memadminae86998ab7
new memcached password: 5061f251caff808e57490e11
*************************************************
*************************************************
* memcache_3e845725.php admin page installed
*************************************************

*************************************************
* MariaDB Security Setup
*************************************************

-------------------------------------------------------
MySQL root user password set
MySQL root user added to /root/.my.cnf
-------------------------------------------------------
MySQL root password: 7Cgd4xPCVjaS8wWZ
-------------------------------------------------------
*************************************************
* MariaDB Security Setup Completed
*************************************************

--------------------------------------------------------
Please bookmark:
--------------------------------------------------------

如下图:

三、Centmin Mod升级方法

Centmin Mod 1.2.3-eva2000.08 - http://centminmod.com
--------------------------------------------------------
                   Centmin Mod Menu                   
--------------------------------------------------------
1).  Centmin Install
2).  Add Nginx vhost domain
3).  NSD setup domain name DNS
4).  Nginx Upgrade / Downgrade
5).  PHP Upgrade / Downgrade
6).  XCache Re-install
7).  APC Cache Re-install
8).  XCache Install
9).  APC Cache Install
10). Memcached Server Re-install
11). MariaDB 5.2/5.5 & 10.x Upgrade Sub-Menu
12). Zend OpCache Install/Re-install
13). Install ioping.sh vbtechsupport.com/1239/
14). SELinux disable
15). Install/Reinstall ImagicK PHP Extension
16). Change SSHD Port Number
17). Multi-thread compression: pigz,pbzip2,lbzip2...
18). Suhosin PHP Extension install
19). Install FFMPEG and FFMPEG PHP Extension
20). NSD Re-install
21). Update - Nginx + PHP-FPM + Siege
22). Add WordPress Nginx vhost + WP Super Cache
23). Update Centmin Mod Code Base
24). Exit
--------------------------------------------------------
Enter option [ 1 - 24 ] 

执行命令:centmin,会看到Centmin Mod操作选项,共24个。

3.1 升级Centmin

如果你一开始没有安装最新版的Centmin Mod,可以使用脚本,选择Centmin Mod升级,选择第三个即可。

3.2 升级PHP

Centmin Mod默认安装的PHP版本比较老,我们可以选择Centmin Mod升级PHP,可以跨大版本升级。

3.3 升级数据库

Centmin Mod脚本可以自动升级数据库。

3.4 升级Nginx

Centmin Mod也可以很方便地升级Nginx。

四、Centmin Mod配置优化

4.1 ngx_pagespeed

如果你发现你的Centmin Mod并没有安装ngx_pagespeed,你可以打开 /etc/centminmod/custom_config.inc 将这两个参数调整为y即可:NGINX_PAGESPEED='y'和NGXDYNAMIC_NGXPAGESPEED='y',然后重新升级一下Nginx即可。

执行命令:nginx -V,看到--add-dynamic-module=../incubator-pagespeed-ngx-1.13.35.2-stable,即表示已经成功安装了。最后执行一下命令开启:

pscontrol on

4.3 Letsencrypt SSL

默认的是Centmin Mod没有开启Letsencrypt SSL(我已经无力吐槽了,Letsencrypt SSL国外已经非常流行了,Centmin Mod居然还需要自己手动开启),打开文件 /etc/centminmod/custom_config.inc 添加以下命令激活 acmetool.sh.

LETSENCRYPT_DETECT='y'

然后,你还要再次启用一下acmetool.sh  插件:

cd /usr/local/src/centminmod/addons
./acmetool.sh acmeinstall

五、Centmin Mod建站教程

执行命令:centmin,然后选择Add Nginx vhost domain,输入你的域名,设置你的FTP账号和密码(貌似强制,必须开通FTP),然后选择自动生成SSL证书,最后完成。网站的根目录如下:/home/nginx/domains/lvps.wzfou.me

Centmin Mod创建的网站的Nginx配置文件路径如下:/usr/local/nginx/conf/conf.d

开启ngx_pagespeed。打开你的域名的nginx配置文件,检查一下ngx_pagespeed的相关配置的“#”号是否存在,存在的话去掉才可以生效。

重启Nginx,然后你的网站,此时你可以看到你的网页以及图片都已经经过了ngx_pagespeed优化了。

更多的优化选项,请编辑:include /usr/local/nginx/conf/pagespeed.conf;,然后参考此文来选择你要优化的内容:

1.PageSpeed服务器优化神器-Nginx部署ngx_pagespeed模块和加速效果体验

Nginx自适应WebP图片。首先保证你的图片下都有WebP副本,批量转换请参考:网站图片WebP格式批量转换设置及加速效果体验

最新版本的Centmin的/usr/local/nginx/conf/nginx.conf已经有了以下命令(检查一下你的有没有,有的话就表示自动开启了WebP自适应了):

include /usr/local/nginx/conf/webp.conf;

没有话也没有关系,按照下面的说明在你的域名Nginx配置中添加代码:

#在你的http段添加以下代码,即一般是在server{}段外面
map $http_accept $webpok {
   default   0;
   "~*webp"  1;
}

map $http_cf_cache_status $iscf {
   default   1;
   ""        0;
}

map $webpok$iscf $webp_extension {
  11          "";
  10          ".webp";
  01          "";
  00          "";
}

#然后在你的server{}里面添加以下代码
# webp extension support if you are converting /uploads images to webp
location ~ ^/wp-content/uploads/ {
  #pagespeed off;
  #pagespeed unplugged;
  #autoindex on;
  #add_header X-Robots-Tag "noindex, nofollow";
  location ~* ^/wp-content/uploads/(.+/)?(.+)\.(png|jpe?g)$ {
   expires 30d;
   add_header Vary "Accept";
   add_header Cache-Control "public, no-transform";
   try_files $uri$webp_extension $uri =404;
  }
}

#重启
service nginx restart

六、总结

Centmin Mod优点很多:官方的参考文档很详细,很多优化都是脚本自带的,省去了新手折腾代码的麻烦。但是Centmin Mod也有不少的不足,例如免费SSL证书要手动开启、没有备份功能、Nginx编译参数不能自定义等等。

文章出自:挖站否 https://wzfou.com/centminmod/,版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

文章更新于: %s = human-readable time difference 下午2:06

Qi

关于站长(Qi),2008年开始混迹于免费资源圈中,有幸结识了不少的草根站长。之后自己摸爬滚打潜心学习Web服务器、VPS、域名等,兴趣广泛,杂而不精,但愿将自己经验与心得分享出来与大家共勉。

查看评论