学习路之PHP--webman安装及使用、webman/admin安装

学习路之PHP--webman安装及使用、webman/admin安装

  • 一、安装webman
  • 二、运行
  • 三、安装webman/admin
  • 四、效果
  • 五、配置Nginx反向代理(生产环境:可选)
  • 六、win10运行问题集
  • 七、使用

一、安装webman

  1. 准备:

PHP >= 8.1
Composer >= 2.0
CentOS 7

启用函数:

putenv
proc_open
pcntl_signal_dispatch
pcntl_signal
pcntl_alarm
pcntl_fork
pcntl_wait
shell_exec
exec

  1. 安装命令
composer create-project workerman/webman:~2.0

二、运行

php start.php start
在这里插入图片描述
浏览器访问 http://ip地址:8787
在这里插入图片描述

三、安装webman/admin

  1. 安装扩展
    fileinfo
  2. 运行安装

如果是webman是1.x版本执行 composer require -W webman/admin ~1.0
如果是webman是2.x版本执行 composer require -W webman/admin ~2.0

  1. 访问
    http://127.0.0.1:8787/app/admin/ 完成数据库相关配置

四、效果

在这里插入图片描述

五、配置Nginx反向代理(生产环境:可选)

  1. 新建一个站点,php版本选择纯净态即可,反正都是用不上的,域名填写你申请得到的域名,
    在这里插入图片描述
    在这里插入图片描述
  2. 设置伪静态
    在这里插入图片描述
 # 将请求转发到webmanlocation ^~ / {proxy_set_header Host $http_host;proxy_set_header X-Forwarded-For $remote_addr;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Real-IP $remote_addr;proxy_http_version 1.1;proxy_set_header Connection "";if (!-f $request_filename){proxy_pass http://127.0.0.1:8787;}}# 拒绝访问所有以 .php 结尾的文件location ~ \.php$ {return 404;}# 允许访问 .well-known 目录location ~ ^/\.well-known/ {allow all;}# 拒绝访问所有以 . 开头的文件或目录location ~ /\. {return 404;}
  1. 启动项目
    推荐使用宝塔面板的进程守护管理器,其实就是用supervisord管理后台进程,或者加-d使用默认的守护进程
    在这里插入图片描述
  2. 反向代理(可选,做伪静态了不用反向代理) 我没有做反向代理
    在你新建的网站下,点击设置,然后添加反向代理,目标URL填写你的webman地址和端口即可
    在这里插入图片描述
  3. 效果:
    在这里插入图片描述

六、win10运行问题集

  1. Fatal error: Composer detected issues in your platform: Your Composer dependencies require a PHP version “>= 8.1.0”. You are running 7.4.3. in D:\phpstudy_pro\WWW\webman\webman2.0\vendor\composer\platform_check.php on line 24在这里插入图片描述

解决:php需要8.1。我直接在phpstudy安装了8.2,然后修改根目录\windows.bat

CHCP 65001
D:\phpstudy_pro\Extensions\php\php8.2.9nts\php windows.php
pause
  1. PHP Warning: ‘C:\windows\SYSTEM32\VCRUNTIME140.dll’ 14.0 is not compatible with this PHP build linked with 14.29 in Unknown on line 0
    解决:安装匹配的VC++运行库
https://aka.ms/vs/17/release/vc_redist.x64.exe  # 64位系统
https://aka.ms/vs/17/release/vc_redist.x86.exe  # 32位系统
  1. Fatal error: Directive ‘track_errors’ is no longer available in PHP in Unknown on line 0
    解决:D:\phpstudy_pro\Extensions\php\php8.2.9nts\php.ini
track_errors=Off

七、使用

  1. 忘记密码之处理方法
    plugin\admin\app\controller\AccountController.php 61行
    public function login(Request $request): Response{$this->checkDatabaseAvailable();$captcha = $request->post('captcha', '');if (strtolower($captcha) !== session('captcha-login')) {return $this->json(1, '验证码错误');}$request->session()->forget('captcha-login');$username = $request->post('username', '');$password = $request->post('password', '');// return $this->json(1,password_hash($password, PASSWORD_DEFAULT));//忘记密码之处理方法:直接输出密码密文
  1. 简化验证码
    plugin\admin\app\controller\AccountController.php 196行
    public function captcha(Request $request, string $type = 'login'): Response{$builder = new PhraseBuilder(4, '2345678');//abcdefghjkmnpqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ //简化验证码

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mamba架构和transformer区别

Mamba 架构和 Transformer 架构存在多方面的区别,具体如下: 计算复杂度1 Transformer:自注意力机制的计算量会随着上下文长度的增加呈平方级增长,例如上下文增加 32 倍时,计算量可能增长 1000 倍,在处理长序…

Python爬虫实战:研究mechanize库相关技术

1. 引言 随着互联网数据量的爆炸式增长,网络爬虫已成为数据采集和信息挖掘的重要工具。Python 作为一种功能强大且易于学习的编程语言,拥有丰富的爬虫相关库,如 Requests、BeautifulSoup、Scrapy 等。Mechanize 库作为其中的一员,特别擅长处理复杂的表单提交和会话管理,为…

如何使用索引和条件批量更改Series数据

视频演示 如何通过索引与布尔条件修改 pandas Series?实操演示来了 一、前言:掌握Series数据修改是数据处理的基础 在使用Python进行数据分析时,Pandas库的Series对象是最常用的结构之一。在上一个视频中我们已经学习了如何创建Series对象&a…

CentOS 7 如何安装llvm-project-10.0.0?

CentOS 7 如何安装llvm-project-10.0.0? 需要先升级gcc至7.5版本,详见CentOS 7如何编译安装升级gcc版本?一文 # 备份之前的yum .repo文件至 /tmp/repo_bak 目录 mkdir -p /tmp/repo_bak && cd /etc/yum.repo.d && /bin/mv ./*.repo …

6个月Python学习计划 Day 15 - 函数式编程、高阶函数、生成器/迭代器

第三周 Day 1 🎯 今日目标 掌握 Python 中函数式编程的核心概念熟悉 map()、filter()、reduce() 等高阶函数结合 lambda 和 列表/字典 进行数据处理练习了解生成器与迭代器基础,初步掌握惰性计算概念 🧠 函数式编程基础 函数式编程是一种…

SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则

目录 一、前言二、版本选择和适配 2.1、本文使用各组件版本2.2、官方推荐版本 三、部署sentinel-dashboard 3.1、下载 sentinel-dashboard jar包3.2、启动 sentinel-dashboard 四、Gateway 集成 Sentinel实现控制台配置流控规则测试 4.1、添加Gateway 集成 Sentinel 包4.2、添加…

Linux八股【1】-----虚拟内存

参考:小林coding 虚拟内存存在的目的? 为了能够同时运行多个进程同时进程之间互不干扰 虚拟地址通过MMU找到物理地址 物理内存怎么映射的? 物理内存的映射方法主要有两种,内存分段和内存分页 内存分段 把程序的不同区&#…

惊艳呈现:探索数据可视化的艺术与科学

一张图表真能胜过千言万语?当超市销售数据变成跳动的热力图,当城市交通拥堵状况化作流动的光带,数据可视化正以超乎想象的方式重塑我们认知世界的维度。但你是否想过,那些看似精美直观的图表背后,藏着怎样精密的科学逻…

06-排序

排序 1. 排序的概念及其应用 1.1 排序的概念 排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个具有相同的关键…

从失效文档到知识资产:Gitee Wiki 引领研发知识管理变革

在关键领域软件研发的复杂生态中,知识管理正成为制约行业发展的关键瓶颈。随着软件系统规模不断扩大、技术栈日益复杂,传统文档管理模式已难以满足现代软件工厂对知识沉淀、共享和传承的需求。Gitee Wiki作为新一代知识管理平台,通过技术创新…

MySQL 性能调优入门 - 慢查询分析与索引优化基础

MySQL 性能调优入门 - 慢查询分析与索引优化基础 性能问题诊断的通用思路 当数据库出现性能问题时,切忌盲目猜测或随意调整参数。一个科学的诊断流程通常包括: 基于数据,而非猜测 (Data-Driven, Not Guesswork):利用我们在上一篇讨论的性能监控指标和建立的基线。查看哪些…

8天Python从入门到精通【itheima】-73~74(数据容器“集合”+案例练习)

目录 73节-集合的基础定义和操作 1.学习目标 2.为什么要用集合 3.集合的定义 4.关于集合的常用操作 【1】添加新元素:add方法 【2】移除元素:remove方法 【3】随机取出元素:pop方法 【4】清空集合:clear方法 【5】取出两…

国芯思辰| AD7894的优质替代方案:SC1424模数转换器在分布式控制系统中的应用优势

分布式控制系统将控制任务分散至多个节点,各节点协同工作以实现复杂的控制目标。在这一架构下,系统ADC提出了严苛要求。高精度是精准采集各类模拟信号(如传感器输出的电压、电流信号)的基础,关乎控制决策的准确性&…

Unity基础-数学向量

Unity基础-数学向量 二、向量相关用法 概述 向量在Unity游戏开发中扮演着重要角色,用于表示位置、方向、速度等。Unity提供了Vector2、Vector3等结构体来处理向量运算。 1. 向量基础操作 1.1 向量创建和访问 // 创建向量 Vector3 position new Vector3(1, 2,…

Neo4j 数据建模:原理、技术与实践指南

Neo4j 作为领先的图数据库,其核心优势在于利用图结构直观地表达和高效地查询复杂关系。其数据建模理念与传统关系型数据库截然不同,专注于实体(节点)及其连接(关系)。以下基于官方文档,系统阐述其建模原理、关键技术、实用技巧及最佳实践: 一、 核心原理:以关系为中心…

volka 25个短语动词

以下是分句分段后的内容: 3,000. Thats 95% of spoken English. And I am teaching you all of these words. First, Ill teach you todays words. And then youll hear them in real conversations. With my brother. Stick around until the end, because witho…

服务器中日志分析的作用都有哪些

服务器日志是用来检测和排查可疑行为的主要工具,运维团队可以通过分析和解读日志文件,发现服务器中潜在的网络安全威胁或异常活动,下面,就让小编和大家一起来了解一下服务器中日志分析的作用都有什么吧! 对于服务器中的…

嵌入式硬件篇---龙芯2k1000串口

针对串口错误 “device reports readiness to read but returned no data (Device disconnected or multiple access on port?)” 的排查和解决方法 硬件方面 检查连接 确认串口设备(如串口线、连接的模块等)与龙芯设备之间的物理连接是否牢固,没有松动、脱落情况。尝试重新…

基于langchain的简单RAG的实现

闲来无事,想研究一下RAG的实现流程,看网上用langchain的比较多,我自己在下面也跑了跑,代码很简单,以次博客记录一下,方便回顾 langchain LangChain 是一个基于大型语言模型(LLM)开发…

视频监控平台建设方案

第三方视频监控平台是整合视频监控、门禁、报警等多业务的安防软件系统,具备兼容性、开放性、多业务整合和多级联网能力。其核心价值在于兼容友商编解码设备(如 IPC、DVR)、整合第三方子系统(如报警联动)、支持多级多域架构(适应平安城市等大规模场景)及提供集中存储方案…