Debian 德比安 Nginx + PHP + MySql + beanstalkd + Redis + Node.js

网卡模式选择桥接 mirrors.163.com

阿里镜像源 https://mirrors.aliyun.com/debian/
DeBian 安装软件选择时勾选上 SSH server
apt update
apt install sudo #安装 sudo
usermod -aG sudo username #添加普通账号到  sudo

让 root 可以 SSH
配置文件 /etc/ssh/sshd_config 
找到 PermitRootLogin 选项 并将其值修改为
PermitRootLogin yes
重启ssh
systemctl restart ssh

共享文件夹

先在 VirtualBox 上添加好

然后在 Debian 客户机上安装了 VirtualBox Guest Additions。这可以提供对共享文件夹的支持和其他增强功能

sudo apt update
sudo apt install virtualbox-guest-additions-iso
sudo mkdir /home/wwwroot
#挂载共享文件夹
#qgmvc5_share 为在 VirtualBox 中设置的共享文件夹名称
sudo mount -t vboxsf qgmvc5_share /home/wwwroot
#设置自动挂载
sudo nano /etc/fstab
未尾添加
qgmvc5_share /home/wwwroot vboxsf defaults 0 0
重新挂载 /etc/fstab 中的所有条目
sudo mount -a

Nginx

sudo apt install nginx
sudo systemctl status nginx
sudo systemctl start nginx #如果服务未启动,可以手动启动它
sudo systemctl enable nginx 设置 Nginx 开机自启
sudo ln -s /usr/sbin/nginx /usr/local/bin/nginx 添加到系统命令

Nginx 的配置文件位于 /etc/nginx 目录下。
具体的站点配置文件位于 /etc/nginx/sites-available 和 /etc/nginx/sites-enabled 目录中
/etc/nginx/sites-available 用于存放所有可用的 Nginx 站点配置文件
/etc/nginx/sites-enabled 用于存放实际要被 Nginx 加载的站点配置文件的符号链接
ln -s <target> <link_name> 创建文件符号链接 
ln -s /etc/nginx/sites-available/default.conf /etc/nginx/sites-enabled/default.conf
rm <link_name> 删除文件符号链接
ls -l 可以查看符号链接的详细信息

sudo nginx -t 命令检查配置文件的语法是否正确
sudo nginx -s reload 更新配置
sudo systemctl restart nginx 重启

php-fpm

sudo apt install php-fpm

sudo systemctl restart php8.2-fpm

sudo apt install php8.2-mbstring
sudo apt install php8.2-curl
sudo apt install php8.2-zip
sudo apt install php8.2-mysql
sudo apt install php8.2-sqlite3
sudo apt install php8.2-mongodb
sudo apt install php8.2-gd
sudo apt install php8.2-imagick
sudo apt install php8.2-bcmath
sudo apt install php8.2-opcache
sudo apt install php8.2-redis
sudo apt install php8.2-apcu
sudo apt install php8.2-intl

ps:vscode 插件 phpcs(vscode-phpcs) 加 composer squizlabs/php_codesniffer 要对 PHP代码做  psr12规范
vscode ctrl+shinf+p + change end of line -> LF

MYSQL

sudo apt install default-mysql-server
sudo systemctl status mysql
sudo mysql -u root -p
password:回车
ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxx007';
FLUSH PRIVILEGES;
允许远程访问
ALTER USER 'root'@'localhost' IDENTIFIED BY 'xxx007';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'xxx007' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

在 /etc/mysql/mariadb.cnf 或 /etc/mysql/conf.d/ 目录中的配置文件中,添加或修改 bind-address 设置,将其设置为 0.0.0.0
/etc/mysql/mariadb.cnf
bind-address = 0.0.0.0

sudo systemctl restart mysql

共享 mysql-data 给 debian /mysql-data 注意mysql data不能放在 /home下

改变 MYSQL 数据文件的存放路径
sudo systemctl stop mysql
sudo mv /var/lib/mysql/* /mysql-data
编辑 MySQL 配置文件 /etc/mysql/my.cnf 或 /etc/my.cnf
找到 datadir 配置项,并将其指向新的数据文件路径。如果未找到,可以手动添加
/etc/mysql/mariadb.cnf
[mysqld]
datadir = /mysql-data/

给mysql读写权限
sudo chown -R mysql:mysql /mysql-data/
sudo systemctl start mysql
sudo systemctl status mysql

 PHP 的一些扩展描述


其他扩展
php8.2-igbinary 是 PHP 的一个序列化扩展,它提供了一种高效的二进制序列化和反序列化方法,用于在 PHP 中存储和检索数据结构。与 PHP 原生的 serialize() 和 unserialize() 函数相比,igbinary 序列化产生的数据更加紧凑和高效,可以提高数据的存储效率和传输速度。

php8.2-http 是 PHP 的 HTTP 客户端扩展,也称为 pecl_http 扩展。这个扩展提供了丰富的 HTTP 客户端功能,使 PHP 脚本能够进行 HTTP 请求和处理 HTTP 响应,包括发送 GET、POST、PUT、DELETE 等类型的请求,处理 Cookie、Headers、FormData 等等。
具体而言,php8.2-http 扩展可以用于:
发送和接收 HTTP 请求和响应
设置和管理 HTTP 请求的各种选项,例如超时、代理等
处理 URL 和 URI
处理 Cookie 和 Session
处理请求和响应的 Headers
处理文件上传和表单数据
处理 HTTPS 请求
支持流式传输(Streaming)
这个扩展提供了更高级的 HTTP 功能,使得 PHP 能够更加灵活和强大地与 Web 服务进行通信和交互。如果您需要在 PHP 中执行复杂的 HTTP 操作,例如与 RESTful API 交互或执行高级的网络请求,php8.2-http 扩展是一个非常有用的工具。


php8.2-imap 是 PHP 的 IMAP 扩展,用于与邮件服务器进行交互并处理电子邮件。IMAP(Internet Message Access Protocol)是一种用于访问和管理电子邮件的网络协议,它允许客户端从邮件服务器上读取邮件、搜索邮件、删除邮件等操作。
使用 php8.2-imap 扩展,您可以在 PHP 脚本中执行以下操作:
连接到远程 IMAP 邮件服务器
遍历邮件邮箱,读取和处理收件箱中的邮件
搜索特定的邮件,并根据条件过滤邮件
下载邮件附件
将邮件标记为已读、已删除等操作
创建、发送和转发邮件
这个扩展对于开发需要与邮件服务器交互的应用程序或脚本非常有用,例如邮件客户端、自动化邮件处理脚本等。


php8.2-intl 是 PHP 的一个扩展模块,用于处理国际化(Internationalization,简称 i18n)和本地化(Localization,简称 l10n)任务。它提供了一组功能,用于处理和操作国际化相关的数据,包括字符编码转换、文本排序、日期时间格式化、货币处理等。以下是 php8.2-intl 扩展的一些主要功能和应用:
字符编码转换:
php8.2-intl 扩展支持各种字符编码之间的转换,例如 UTF-8、ISO-8859 等。它提供了函数和类来实现文本的编码和解码操作。
文本排序和比较:
可以使用 Collator 类来进行字符串的排序和比较,支持不同语言的排序规则和排序算法。
日期时间处理:
支持不同语言和地区的日期时间格式化和解析,包括处理时区、日历系统和日期格式的转换。
货币和数字格式化:
提供了货币和数字格式化的功能,可以根据不同的货币和语言规范进行格式化输出。
Unicode 支持:
php8.2-intl 扩展对 Unicode 标准提供了良好的支持,可以处理复杂的字符集和文本操作。
地理位置信息:
可以根据用户的地理位置和语言环境进行本地化数据的处理和显示。


php8.2-mailparse 是 PHP 的一个扩展模块,用于解析和操作邮件消息。具体而言,mailparse 扩展提供了一组功能,可以帮助 PHP 应用程序解析和处理电子邮件的内容,包括以下主要功能:
解析邮件消息: 可以将原始的 MIME 格式邮件消息解析为 PHP 数据结构,方便应用程序对邮件进行分析和处理。
处理附件: 支持提取邮件中的附件文件,并对附件进行处理,例如保存到文件系统、展示在网页上等。
获取邮件头信息: 可以提取邮件的各种头部信息,如发件人、收件人、主题、日期等。
处理邮件正文: 支持解析邮件的纯文本部分和 HTML 部分,方便应用程序根据需要对邮件内容进行处理和展示。
检测邮件编码: 可以识别邮件中使用的编码方式,方便对邮件内容进行正确的解码和处理。
mailparse 扩展通常用于开发需要处理电子邮件的应用程序,例如邮件客户端、电子邮件过滤器、自动化邮件处理等。它可以让开发者更轻松地解析和操作邮件内容,实现复杂的邮件处理逻辑。
如果您需要在 PHP 中处理电子邮件消息,mailparse 扩展提供了强大且方便的功能,能够大大简化您的开发工作。如果您有更多关于邮件处理或 mailparse 扩展的问题,请随时向我询问!


php8.2-msgpack 是 PHP 的一个扩展模块,用于实现消息打包和解包的功能。它基于 MessagePack 格式,提供了一种高效的二进制数据序列化和反序列化方法,用于在不同系统之间传输和存储数据。
下面是 php8.2-msgpack 扩展的主要功能和用途:
数据序列化和反序列化: 可以将 PHP 的数据结构(例如数组、对象)序列化为 MessagePack 格式的二进制数据,或将 MessagePack 数据反序列化为 PHP 的数据结构。
跨语言数据交换: MessagePack 是一种跨语言的二进制数据格式,因此可以方便地在不同编程语言之间传递和解析数据,例如在 PHP 和其他语言(如 Python、Java、Go 等)之间进行数据交换。
数据压缩和性能优化: 相比 JSON 和 XML 等文本格式,MessagePack 使用更少的字节表示数据,因此具有更高的性能和更小的数据传输量。
高效的网络通信: 在网络通信中,使用 MessagePack 可以减少数据的传输大小和解析时间,提高数据交换的效率。
支持复杂数据结构: msgpack 扩展支持序列化和反序列化复杂的 PHP 数据结构,包括多维数组、关联数组、对象等。
使用 php8.2-msgpack 扩展可以有效地提高 PHP 应用程序的数据处理效率和性能,特别是在需要处理大量数据或进行跨语言数据交换时。


php8.2-oauth 是 PHP 的一个扩展模块,用于实现 OAuth 1.0 和 OAuth 2.0 认证协议的客户端功能。OAuth 是一种开放标准,用于授权第三方应用程序访问用户的资源,而无需将用户的凭据(例如用户名和密码)直接提供给第三方应用。
下面是 php8.2-oauth 扩展的主要功能和用途:
实现 OAuth 客户端: php8.2-oauth 扩展可以让 PHP 应用程序充当 OAuth 客户端,与支持 OAuth 认证的服务提供商进行交互,并获取访问受保护资源所需的令牌。
支持 OAuth 1.0 和 OAuth 2.0: 该扩展同时支持 OAuth 1.0 和 OAuth 2.0 协议,可以用于与不同版本的 OAuth 认证服务进行通信。
简化 OAuth 认证流程: 使用 php8.2-oauth 扩展,开发者可以轻松地实现 OAuth 认证流程,包括获取请求令牌、获取访问令牌、刷新令牌等步骤。
安全的授权访问: OAuth 协议通过授权访问令牌来保护用户的资源,并避免了直接提供用户凭据的安全风险。
与 OAuth 服务集成: 开发者可以使用 php8.2-oauth 扩展与各种支持 OAuth 认证的服务集成,例如 Google、Facebook、Twitter 等。

php8.2-pcov 是 PHP 的一个扩展模块,用于代码覆盖率分析和测试。它可以在 PHP 程序运行时收集代码覆盖率数据,帮助开发人员评估代码的测试覆盖率,从而识别和改进测试覆盖不足的部分。
下面是 php8.2-pcov 扩展的主要功能和用途:
代码覆盖率分析: php8.2-pcov 扩展可以跟踪 PHP 程序执行时哪些代码被执行,从而生成代码覆盖率报告。这些报告可以帮助开发人员确定哪些代码路径已被测试覆盖,哪些尚未得到覆盖。
测试优化: 借助代码覆盖率报告,开发人员可以识别测试用例覆盖不足的部分,并针对性地优化测试策略,增加测试覆盖率,提高代码质量和稳定性。
性能分析: php8.2-pcov 通过跟踪代码执行路径,可以帮助开发人员分析和优化 PHP 程序的性能,识别潜在的性能瓶颈和优化机会。
与测试框架集成: php8.2-pcov 可以与各种 PHP 测试框架(如 PHPUnit)集成,实现自动化的代码覆盖率分析和测试报告生成。
开发调试: 通过查看代码覆盖率报告,开发人员可以快速定位和调试代码中的问题,并验证代码变更的影响范围。


php8.2-phpdbg 是 PHP 的一个命令行调试器,用于调试 PHP 脚本和应用程序。它提供了一组调试功能,可以帮助开发人员识别和解决 PHP 程序中的问题。
以下是 php8.2-phpdbg 的一些主要功能和用途:
交互式调试: php8.2-phpdbg 提供了交互式的命令行调试界面,可以在运行时检查和控制 PHP 程序的执行流程。
断点调试: 开发人员可以在代码中设置断点,以便在特定位置停止程序执行,并可以查看和修改变量的值、调用堆栈等信息。
单步调试: php8.2-phpdbg 支持单步执行代码,逐行检查程序执行过程,方便发现代码逻辑和执行路径中的问题。
变量监视: 开发人员可以使用 php8.2-phpdbg 查看和监视程序中的变量值,以便在调试过程中理解代码的运行状态。
执行控制: php8.2-phpdbg 允许开发人员控制程序的执行流程,包括跳过、重复执行、中断和恢复等操作,以便更好地调试和分析代码。
与 IDE 集成: php8.2-phpdbg 可以与各种集成开发环境(IDE)和调试工具集成,提供更强大的 PHP 调试功能和可视化调试体验。

php8.2-pinba 是一个 PHP 扩展,用于与 Pinba(一个用于监视 PHP 应用程序性能的开源工具)集成。它允许 PHP 应用程序与 Pinba 服务进行通信,从而收集和报告有关 PHP 应用程序性能的数据。
具体来说,php8.2-pinba 扩展提供了以下功能和用途:
性能监控: 通过与 Pinba 服务器通信,php8.2-pinba 可以监视 PHP 应用程序的性能指标,例如请求处理时间、数据库查询次数、内存使用情况等。
实时分析: Pinba 提供了实时监控和分析功能,可以即时查看 PHP 应用程序的性能数据,帮助开发人员识别和解决性能瓶颈。
报告生成: 基于收集到的性能数据,Pinba 可以生成报告和统计信息,帮助开发人员优化 PHP 应用程序的性能和效率。
可扩展性: php8.2-pinba 扩展可以与其他 PHP 应用程序监控工具集成,扩展性强,可以根据需求定制和扩展监控功能。

php8.2-ps 扩展是用于与 PostScript 文件格式交互的扩展。PostScript 是一种页面描述语言,常用于打印和图形处理领域。
具体来说,php8.2-ps 扩展提供了 PHP 与 PostScript 文件格式进行交互的功能,允许 PHP 脚本生成、操作和处理 PostScript 文件。通过这个扩展,开发人员可以在 PHP 中动态生成和修改 PostScript 文件,实现一些与打印和图形相关的操作。

php8.2-pspell 扩展是用于与 Pspell 拼写检查库进行交互的扩展。Pspell 是一个用于拼写检查的开源库,允许开发人员在应用程序中进行拼写检查和纠正。


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/583945.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++中auto关键字的用法详解

1.简介 auto作为一个C语言就存在的关键字&#xff0c;在C语言和C之间却有很大区别。 在C语言中auto修饰的变量&#xff0c;是具有自动存储器的局部变量&#xff0c;但因为局部变量默认类别默认是auto修饰导致一直没有人去使用它。 C11中&#xff0c;标准委员会赋予了auto全新…

【MySQL | 第八篇】在MySQL中,如何定位慢查询以及对应解决方法?

文章目录 8.在MySQL中&#xff0c;如何定位慢查询以及对应解决方法&#xff1f;8.1MySQL慢查询日志8.1.1开启慢查询&#xff08;1&#xff09;修改配置文件&#xff08;2&#xff09;设置全局变量 8.1.2日志记录在表上&#xff08;实践&#xff09;8.1.3日志记录在文件上&#…

android studio 4.2.1运行java文件报错

当运行某个带main函数的java文件报这个错误的时候 Could not create task :app:Test.main(). > SourceSet with name main not found. 解决办法&#xff1a;在工程的.idea下的.gradlew.xml文件下添加 <option name"delegatedBuild" value"false"…

InternVL——GPT-4V 的开源替代方案

您的浏览器不支持 video 标签。 在人工智能领域&#xff0c;InternVL 无疑是一颗耀眼的新星。它被认为是最接近 GPT-4V 表现的可商用开源模型&#xff0c;为我们带来了许多惊喜。 InternVL 具备强大的功能&#xff0c;不仅能够处理图像和文本数据&#xff0c;还能精妙地理解…

基于H.264的RTP打包中的组合封包以及分片封包结构图简介及抓包分析

H.264视频流的RTP封装类型分析&#xff1a; 前言&#xff1a; NULL Hearder简介(结构如下)&#xff1a; ---------------|0|1|2|3|4|5|6|7|--------|F|NRI| Type |--------------- F&#xff1a;forbidden_zero_bit&#xff0c; 占1位&#xff0c;在 H.264 规范中规定了这…

Python数据分析大作业(ARIMA 自回归积分滑动平均模型) 4000+字 图文分析文档 销售价格库存分析+完整python代码

资源地址&#xff1a;Python数据分析大作业 4000字 图文分析文档 销售分析 完整python代码 完整代码分析 ​ 同时销售量后1000的sku品类占比中&#xff08;不畅销产品&#xff09;如上&#xff0c;精品类产品占比第一&#xff0c;达到66.7%&#xff0c;其次是香化类产品&#x…

【架构】后端项目如何分层及分层领域模型简化

文章目录 一. 如何分层1. 阿里规范2. 具体案例分析 二. 分层领域模型的转换1. 阿里规范2. 模型种类简化分析 三. 小结 本文描述后端项目中如何进行分层&#xff0c;以及分层领域模型简化 一. 如何分层 1. 阿里规范 阿里的编码规范中约束分层逻辑如下: 开放接口层&#xff1a…

Apache Seata基于改良版雪花算法的分布式UUID生成器分析1

title: Seata基于改良版雪花算法的分布式UUID生成器分析 author: selfishlover keywords: [Seata, snowflake, UUID] date: 2021/05/08 本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 Seata基于改良版雪花算法的分布式UUID生成器分析…

NLP(10)--TFIDF优劣势及其应用Demo

前言 仅记录学习过程&#xff0c;有问题欢迎讨论 TF*IDF&#xff1a; 优势&#xff1a; 可解释性好 可以清晰地看到关键词 即使预测结果出错&#xff0c;也很容易找到原因 计算速度快 分词本身占耗时最多&#xff0c;其余为简单统计计算 对标注数据依赖小 可以使用无标注语…

请编写函数fun,该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。

本文收录于专栏:算法之翼 https://blog.csdn.net/weixin_52908342/category_10943144.html 订阅后本专栏全部文章可见。 本文含有题目的题干、解题思路、解题思路、解题代码、代码解析。本文分别包含C语言、C++、Java、Python四种语言的解法完整代码和详细的解析。 题干 请编…

React Router 路由配置数组配组持久化

在一些特定场景下,你可能需要将路由配置数组进行持久化,例如从后端动态加载路由配置或根据用户权限动态生成路由配置。这时,持久化路由配置数组就很有用,可以避免每次应用启动时重新获取或计算路由配置。 持久化路由配置数组的步骤如下: 定义路由配置数组 首先,你需要定义一…

[华为OD]C卷 找座位,在一个大型体育场内举办了一场大型活动,由于疫情防控的需要 100

题目&#xff1a; 在一个大型体育场内举办了一场大型活动&#xff0c;由于疫情防控的需要&#xff0c;要求每位观众的必须间隔至 少一个空位才允许落座。现在给出一排观众座位分布图Q,座位中存在已落座的观众&#xff0c;请计 算出&#xff0c;在不移动现有观众座位的情况…

从不同性别、年龄入手,发过的主题还能发!| NHANES数据库周报(4.24)

零基础NHANES挖掘培训班,欢迎咨询&#xff01; 课程 | 零基础两天掌握NHANES公共数据库挖掘技巧&#xff0c;发表SCI论文 美国国家健康和营养检查调查&#xff08;NHANES&#xff09;是一项旨在评估美国成人和儿童健康和营养状况的研究计划。该调查的独特之处在于它结合了访谈和…

Spring6 当中 获取 Bean 的四种方式

1. Spring6 当中 获取 Bean 的四种方式 文章目录 1. Spring6 当中 获取 Bean 的四种方式每博一文案1.1 第一种方式&#xff1a;通过构造方法获取 Bean1.2 第二种方式&#xff1a;通过简单工厂模式获取 Bean1.3 第三种方式&#xff1a;通过 factory-bean 属性获取 Bean1.4 第四种…

LT6911C HDMI 1.4 至 2 端口 MIPI DSI/CSI 龙迅方案

1. 描述LT6911C 是一款高性能 HDMI1.4 至 MIPIDSI/CSI/LVDS 芯片&#xff0c;适用于 VR/智能手机 / 显示应用。对于 MIPIDSI / CSI 输出&#xff0c;LT6911C 具有可配置的单端口或双端口 MIPIDSI/CSI&#xff0c;具有 1 个高速时钟通道和 1~4 个高速数据通道&#xff0c;工作速…

NFTScan | 04.22~04.28 NFT 市场热点汇总

欢迎来到由 NFT 基础设施 NFTScan 出品的 NFT 生态热点事件每周汇总。 周期&#xff1a;2024.04.22~ 2024.04.28 NFT Hot News 01/ ApeCoin DAO 发起「由 APE 代币支持的 NFT Launchpad」提案投票 4 月 22 日&#xff0c;ApeCoin DAO 社区发起「由 APE 代币支持的 NFT Launch…

JAVA基础——集合框架(List与Set)

数据结构 什么是数据结构 数据结构就是用来装数据以及数据与之间关系的一种集合。如何把相关联的数据存储到计算机&#xff0c;为后续的分析提供有效的数据源&#xff0c;是数据结构产生的由来。数据结构就是计算机存储、组织数据的方式。好的数据结构&#xff0c;让我们做起事…

Deckset for Mac激活版:MD文档转幻灯片软件

Deckset for Mac是一款专为Mac用户打造的Markdown文档转幻灯片软件。它凭借简洁直观的界面和强大的功能&#xff0c;成为许多用户的心头好。 Deckset for Mac激活版下载 Deckset支持Markdown语法&#xff0c;让用户在编辑文档时无需分心于复杂的格式设置&#xff0c;只需专注于…

分布式与一致性协议之Raft算法(二)

Raft算法 什么是任期 我们知道&#xff0c;议会选举中的领导者是有任期的&#xff0c;当领导者任命到期后&#xff0c;需要重新再次选举。Raft算法中的领导者也是有任期&#xff0c;每个任期由单调递增的数字(任期编号)标识。比如&#xff0c;节点A的任期编号是1。任期编号会…

Spark-机器学习(8)分类学习之随机森林

在之前的文章中&#xff0c;我们学习了分类学习之支持向量机决策树支持向量机&#xff0c;并带来简单案例&#xff0c;学习用法。想了解的朋友可以查看这篇文章。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的不错&#xff0c;请留下你宝贵的点赞&a…