写这篇文章之前,我纠结了很久,到底要不要写。如果写的话,按照下面的方法操作的过程中肯定会遇到很多难题。不写的话,安装云锁后很多功能都用不上。我花了两天时间才想明白。所以下面介绍的nginx自编译方法有一定的局限性,比如限制宝塔的版本(nginx1.14),限制服务器系统的版本(我自己用的Centos7.6),限制服务器的各种内置模块等等。因为对代码一窍不通,下面的教程都是从网上拼凑出来的,下面的方法我无法提供任何私人帮助。你可以随时使用它们。如果用不上,就上网找别的方法。我会的。下面我详细介绍一下。

1.正式编译前,关闭PC端软件中的【操作安全加固】功能,如下所示。

2.通过以下命令检查nginx文件所在的路径。所有在接下来的步骤中提到nginx路径的代码都以我的服务器中的nginx文件路径为准。

ps -elf | grep nginx

3.进入Nginx的安装目录,备份现有的Nginx文件。代码如下:

cd /www/server/nginx/sbin/

cp nginx nginx.bak

因为我之前复制过,这里提示是否覆盖原文件,点击回车即可。如果是第一次操作,不会出现这个提示。

4.下载云锁保护文件。代码如下。第一行代码表示返回根目录,第二行是下载命令。

cd ~

wget https://code load . github.com/yun suo-open/nginx-plugin/zip/master-O nginx-plugin-master . zip

下载后,应出现以下界面:

文件大小为21034kb,已保存。可能后期下载的时候会因为官方升级导致文件大小不一致,不要在意。

5.解压云锁保护模块的压缩包。命令如下:

解压nginx-plugin-master.zip

因为我之前解压过,所有的提示都是是否替换文件。如果是第一次解压,会得到下划线部分对应的文件列表。

6.获取当前云锁模块所在目录的完整路径。代码如下:

cd nginx-plugin-master/

显示当前工作目录

7.检查nginx目前加载的模块。编译加载云锁保护模块时,这些模块还是需要加载的。下面的步骤更重要,小心。如果你不小心,很容易出错。

cd ~

/www/server/nginx/sbin/nginx -V

复制并保存上图两把剪刀之间的一切,从- user开始,直到结束。

8.进入nginx源码目录,编译nginx(安装在宝塔面板上的nginx源码位于/www/server/nginx/src);编译时添加云锁保护模块参数,参数路径为步骤6得到的云锁保护模块源代码的完整路径“/root/nginx-plugin-master”

注:编译内容为(。/在上一步中在记事本中配置备用内容-添加-模块=/root/nginx-plugin-master)

上面这段话是我直接从网上抄来的,很重要,尤其是抄代码的时候,多一个字符少一个字符可能会带来毁灭性的错误。对于像云轩博主这样的代码盲来说,试着成功一次。如果你不成功,你会发现很难恢复。

cd/www/server/nginx/src。/在步骤5-add-module=/root/nginx-plugin-master中配置记事本中记录的内容

9.如果以上步骤更重要,那么下面的步骤就更重要了。稍有不慎,就会输掉整场比赛。这是因为我被困在这里,以前总是安装失败,所以我创建了一个新的实例。因为这一步需要在Linux服务器上重新编辑和保存文件。代码如下:

vi objs/Makefile

10.按插入并查找-Werror -g添加-dhighthan8,然后按ESC: wq

11.如果保存成功,运行以下命令开始正式编译。这个过程花了很长时间,花了我20分钟。

完成的界面应该如下所示:

12.make完成后,用重新编译生成的nginx文件替换系统中原来的nginx。替换后重新启动nginx,使新编译的nginx生效。代码如下:

RM-RF/www/server/nginx/sbin/nginx

CP objs/nginx/www/server/nginx/sbin/

服务nginx重启

13.测试云锁保护是否有效的方法:域名/?以.排序

将显示以下界面:

注意:测试前请到云锁PC管理终端打开系统保护及相关功能。

以上教程大部分来自网络,增加了一些操作过程中的经验。本文所有图片都是测试过程中截图编辑的,因为云锁保护设置无效的相关因素很多。建议你多查资料,多比较多学习,找到无效的真正原因,然后对症下药。

  • 评论列表 (0)

留言评论