【凡人修仙传_01】散修厉飞羽是如何出师未捷身先死的!

本文主要记录了散修厉飞羽是如何出师未捷身先死的!涉及内容如下:

  • 安装 nginx
  • 安装 php8.0版本
  • 安装 lsky 2.0.4 / 2.1 版本
  • 卸载 nginx
  • 卸载 php

为了能够在开发界混出点名堂,以便历某叱咤整个编程界,于是乎本炼气期散修便妄想追随已成名的处于大乘期的阮一峰老师 或者其他宗门的名声响当当的大佬如阿里宗的多隆大佬CodeSheep的修炼步伐,因此决定搭建一个"厉飞羽"的修炼洞府(博客网站),以便让厉飞羽这一名号响亮整个修仙界(简直是图样图森破的标准案例)。

写在前面:厉飞羽在戎战两天后,由于意志奔溃走火入魔最终身死魂消。

厉飞羽这短暂"修仙"之途

想我厉某已在编程界历练两年有余,虽说整日在宗门游手好闲只做一些劈材担水的杂活(curd),但好歹也见识过一些编程界的险恶(404,500,NPE),虽说历某立志成为Java大道的天尊,但在其他道友们的耳濡目染下,对其他功法如前端基本技术也略有涉及,虽然不至于融会贯通自创功法,但是依葫芦画瓢在各位前辈的带领下和各种炼制法宝如React、Vue 的帮助下也能完成个456,况且在这个四处可见修炼心得的编程界,开辟一个属于自己的洞府岂不是简简单单?还能有我厉飞羽历某解决不了的问题(对不起,还真有,还很多!)?

修仙之人只图一个念头通达,说干就干,为了能够早日让厉飞羽这个名号响彻编程界,我决定使用一套Java初级连招迅速创建出一个宗门资源功法仓库,接着打开React法宝使用说明书结合antd + react-router-v6等诸多宝物一套连招下去,宗门便小有雏形,这样慕名而来的人便可看到当前宗门的功法心得,正感叹着我历某必将掀起一股腥风血雨的时候,处于炼气期的历某便遭到修仙途中的第一个仙途变故!

为了能够更好的领悟各个功法原理,整理相关修炼资源以便历某早日到达筑基期,历某便在外寻觅前辈们所说的收纳资源的宝物一品法器图床,历某在寻找此物的过程中可谓是九死一生,不管是二次元宗的短视频幻阵、亦或者Google宗、谢邀宗、热门宗的各具特色的蛊惑人心的阵法 (二次元真好看.JPG,谢邀宗的牛肉也真好吃.jpg) 都给历某带来了极大的麻烦,虽说最后都得以逃脱,想来还是后背发凉!虽说此行凶险,但历某最终得到了如下解决办法!

  • 修炼白嫖功法,白嫖其他大佬搭建的免费图床,优点免费省心,直接用即可,缺点就是不稳定,容易造成宗门资源的丢失(图床挂掉),后期劳神费力。
  • 使用其他修炼Java成神功法的大佬炼制的FastDFS,创建一个属于自己宗门的仓库,缺点就是功法原理图会暴露仓库地址,且修炼起来相对白嫖功法稍显复杂
  • 使用其他宗门大能炼制的法宝如 zimg 或者 Lsky 兰空等宝物,只需简单滴血认主,稍加炼制即可。
  • 寻求阿里宗或者企鹅宗的庇护,只需缴纳保护费即可!

再结合自身状况之后,历某最终选择了第三种炼制法器 Lsky Pro

ps:谁知这一抉择,历某就走上了身死道消之路!

历某在决定之后,首先便去到 Lsky pro 门派获取到Lsky pro 2.0.4.zip,历某为了早日解决踏进筑基期,直接将其使用scp传送阵法将其传送至历某的云端洞府,为了能够炼制lsky,在lsky宗门得知需要得到 nginx + php8.0 以上版本以及相关的一些宝物才能够正常炼制。

bash 复制代码
# 传送至云端服务器
scp Lsky-pro-2.0.4.zip lifeiyu@xxx.xxx.xx.xxx:/var/www/html;
# 解压命令,在安装完 nginx 和 php8.0 之后执行
unzip /var/www/html/lsky-pro-2.0.4.zip -d /var/www/html

首先是法宝 nginx,首先使用如下口令炼制专属的 nginx

bash 复制代码
sudo apt update
sudo apt upgrade
sudo apt install nginx
# 查看nginx 版本
sudo nginx -v

召唤成功后可使用如下口令sudo systemctl status nginx查看宝物状态,出现如下情况即召唤成功:

此时通过ip访问,浏览器会出现welcome to nginx画面。如诺没出现记得配置云主机的安全组规则!

在成功召唤炼制nginx之后,立马召唤宝物 php-8.0,由于本洞府默认配置的宝物是php7.4(Ubuntu20.04 默认的php版本为7.4) 无法与宝物lsky-2.0.4配合使用,因此使用如下召唤方式:

bash 复制代码
# 启用PHP存储库
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
# 安装php8.0 把8.0改为8.1 8.2也可
sudo apt update
sudo apt install php8.0-fpm

同样在召唤php8.0之后sudo systemctl status8.0-fpm查看宝物状态。

至此两件宝物已经召唤成功,但事情还没有结束,我们必须要要使用其他PhP大能炼制的宝物,这样才具备炼制Lsky pro 的条件

bash 复制代码
sudo apt install php-bcmath  php-json php-mbstring php-tokenizer php-xml php-imagick
sudo apt install libssl-dev openssl
# 安装php-pdo扩展
sudo apt install php8.0-xml

ps:我在这之前已经安装过了!

至此万事俱备只欠东风!接着使用法令unzip /var/www/html/lsky-pro-2.0.4.zip -d /var/www/html消除Lsky的zip压制(解压),一鼓作气修改nginx的配置:

bash 复制代码
cd /etc/nginx/sites-available/
sudo vim default

第一点:将root指向lsky的public文件夹,并在index后面添加index.php

第二点:server_name 其值为云主机的ip地址或者域名

第三点:将location 里面的=404修改为/index.php?$query_String

第四点:location部分修改为图中所示,注意我这里安装的php8.0-fpm所以图中是这个,这里需要与你安装的版本相对应!

修改目录权限:

bash 复制代码
sudo chown -R www-data /var/www/html
sudo chmod -R 755 /var/www/html

接着重启nginxphp8.0

bash 复制代码
sudo systemctl restart nginx
sudo systemctl restart php8.0-fpm

通过浏览器访问ip地址即可正常召唤lsky,如下图第一次炼制Lsky pro失败

查看已安装模块php -m 宝物Php给出如下响应:可知bcmath,imagick,mbstring以正确安装

为了能够早日筑基成功,随即采用如下命令修改php版本

bash 复制代码
# 卸载php8.0
sudo apt-get autoremove php8*
sudo find /etc -name "*php*" |xargs  rm -rf
sudo apt purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
dpkg -l | grep php8.0
# 安装8.1
sudo apt install php8.1-fpm
# 安装其他扩展
sudo apt install php-bcmath  php-json php-mbstring php-tokenizer php-xml php-imagick
sudo apt install libssl-dev openssl
# 安装php-pdo扩展
sudo apt install php8.1-xml

修改/etc/nginx/sites-available/default文件中location部分中的如下图

使用如下法令重启nginxphp8.1:

bash 复制代码
sudo systemctl restart nginx;
sudo systemctl restart php8.1-fpm

在卸载php的时候可能会把这个文件删除,导致nginx无法重启成功,出现重启失败的情况

重启失败截图如下:

可使用如下命令卸载nginx之后重新安装(在第二部分有正确搭建步骤,切勿如此修改,只是历某最初无法知道怎么解决采取了最暴力的方式)

bash 复制代码
# 彻底卸载nginx
sudo service nginx stop
sudo apt-get --purge remove nginx
sudo apt-get autoremove
dpkg --get-selections|grep nginx
sudo apt-get --purge remove nginx
sudo apt-get --purge remove nginx-common
sudo apt-get --purge remove nginx-core
dpkg --get-selections|grep nginx
# 正常情况下没有输出,说明卸载干净
which nginx 

重新炼制nginx之后记得配置default文件!重启相关软件,访问ip可能会出现500服务器错误。

查看运行日志,在/var/www/html/storage/logs/ 目录下:

bash 复制代码
 # 进入日志目录
 cd /var/www/html/storage/logs/ 
 ll
 # 使用cat命令查看,提示Creator.php98行参数类型错误

修改Creator.php 中代码 删除第98行出的方法参数列表中的array

重启nginxphp,然后通过ip访问得到如下,如果忘了配置default文件或者配置错了有可能会出现502 bad gateway错误,记得检查相关配置文件,重新访问IP结果如下:

没错历某又失败了!在经过了如此多的摧残之后,历某道心已不稳,无法做到念头通达!眼看历某寿元无几,按照之前的方法召唤php8.2,在一番尝试之后历某以为要成功了毕竟事不过三!但是修仙之路怎么如此简单,历某又一次败了!

随着一次又一次的失败,403、500、502、nginx 启动失败、php启动失败、更换lsky pro版本后失败;历某心态已逐步失控,在最后一次召炼制 lsky pro 2.1过程中,由于道心不稳加之已耗费两个周天最终历某没有炼制成功,走火入魔~

总结:修道之人,只图个念头通达,否则迟早道心崩溃~ ps:很难想象作者的精神状态~

正确的修仙之法(已正确搭建)

如下步骤并没有修改php.ini中的内容,就成功搭建!且服务器在此之前也已安装MySQL8.0!

  • 首先正确安装nginx,安装方法如上所示。
  • 其次安装php8.2版本,这一个是最重要的,为什么这么说呢,因为最开始安装8.2之后,由于500错误不知道怎么修改在网上查阅相关资料后,建议是回退到8.1而不是修改Creator.php中的代码,因此在这里就导致了正确配置和安装相关扩展后,运行环境检测始终不通过!导致心态炸裂!记得修改权限~
  • 安装php扩展,安装方法如上面所述。
  • 重启 nginx 和 php,重启可能会遇到如下异常:

这是因为在卸载时删除了fastcgi-php.conf文件。此时不需要卸载nginx安装,只需要修改default文件配置即可,如下:

其他配置不用改变,此时通过浏览器访问即可出现如下页面:

注:如果在这一步出现提示驱动异常

bash 复制代码
sudo apt install mysql-server php-mysql

点击下一步进行其他配置即可。

ps:本来最开始此文只有第一部分的,因为实在是破防了,结果在仔细思考之后,从头开始搭建便成功了!真就只图一个念头通达~

使用到的bash命令总结

bash 复制代码
# 更新源
sudo apt update
sudo apt upgrade -y
# 安装
sudo apt install nginx
# 卸载nginx
sudo service nginx stop
sudo apt-get --purge remove nginx
sudo apt-get autoremove
dpkg --get-selections|grep nginx
sudo apt-get --purge remove nginx
sudo apt-get --purge remove nginx-common
sudo apt-get --purge remove nginx-core
dpkg --get-selections|grep nginx
# 正常情况下没有输出,说明卸载干净
which nginx 
# 查看软件运行状态:
# sudo systemctl status seviceName
sudo systemctl status nginx
sudo systemctl status php8.2-fpm
# 重启nginx
sudo systemctl nginx restart
# 语法检测,如果是ubuntu用户执行nginx -t 可能会出现could open error 的错误提示,加上sudo就好
sudo nginx -t
# 查看php.ini文件位置,这个可以查看运行的加载的php.ini文件路径在哪!可修改此配置文件加载扩展!
php -i | grep "php.ini"

参考链接:

相关推荐
IT_陈寒6 小时前
Python多进程共享变量那个坑,我差点没爬出来
前端·人工智能·后端
码事漫谈6 小时前
2026软考高级·系统架构设计师备考指南
后端
ayqy贾杰6 小时前
Claude Code 重构,并行化或终结 IDE 时代
前端·javascript·面试
沐曦股份MetaX7 小时前
沐曦股份曦云C系列GPU Day 0适配MiniMax M2.7 澎湃算力支持“自进化”大模型
人工智能·开源
SuperChe7 小时前
用AI Native的方式优化前端性能
前端·算法
陈广亮7 小时前
工具指南24-在线CSS Box Shadow生成器
前端
颜酱7 小时前
智能体与工作流:从「想做一个应用」到「能跑通一条链」
前端·javascript·人工智能
前端 贾公子7 小时前
Tailwind CSS OKLCH 颜色与所有浏览器兼容
前端
Lans7 小时前
别再手动管理 NavBackStackEntry 了!ComposeResult:更优雅的 Jetpack Compose 页面通信方案
前端
AI茶水间管理员7 小时前
如何让LLM稳定输出 JSON 格式结果?
前端·人工智能·后端