基于QT的PHP集成开发环境v2.1

https://gitee.com/xiaqiuchu/wamp-integrated-environment

界面预览

已实现功能

  • 服务的启动、关闭、重启。
  • php版本切换
  • apache版本切换(只支持Apache24 版本,或者下载新的 Apache版本解压后,将 Apachexx 修改为 Apache24)
  • mysql版本切换
  • 服务运行日志的展示
  • 最小化、最大化、托盘运行
  • 全功能 CMD
  • 按钮打开SDK目录

注意

  1. 服务的关闭/重启是通过 cmd 命令强制关闭的,如果你有其他的 apache、mysql 在运行会被一同关闭。
  2. php要下载对应版本的 MS C++ 依赖库,否则会报错 dll 不存在。
  3. 路径不要有中文和空格。
  4. apache、php、mysql检测是通过正则检测,下载官方压缩包解压即可,不要修改文件夹名字。
        filters << "httpd-*";
    filters << "mysql-*-winx*";
    filters << "php*-x86" << "php*-x64";

编译步骤

环境

环境 版本
windows 10
Qt 6.2.4
Qt Creator 8.0.1 (Community)
qmake

步骤

参考:https://www.cnblogs.com/xiaqiuchu/p/16717905.html

  1. 根据 修改/更新SDK方法 将64位的 mysql、apache24、php 下载解压到 /wamp/
  2. 编译应用为 Release。
  3. 打开 Qt 6.2.4 (MinGW 11.2.0 64-bit) 进入打包文件夹,然后使用 windeployqt 将缺失的 dll 引入。

修改/更新SDK方法

/ 指的是编译完毕的软件根目录,与 Wamp.exe 同级

php版本更新

当前按照 php-8.1.9-Win32-vs16-x64 版本举例

  1. 下载 指定的 64位php 版本,解压缩后放到 /wamp/php/

  2. /wamp/php/php-8.1.9-Win32-vs16-x64/php.ini-development 复制一份当前目录,并重命名为 php.ini

apache版本更新

当前按照 Apache 2.4.x OpenSSL 1.1.1 VS17 版本举例

当前 mod_fcgid 按照 mod_fcgid-2.3.9-crlf 版本举例

如果启动失败可能是 443 端口冲突,参考 https://blog.csdn.net/qingtiancao/article/details/89187348

  1. 下载 指定的 2.4.x 版本的 Apache ,解压缩后放到 /wamp/apache/

  2. 下载 Windows 版本的 fcgid ,解压缩后放到 /wamp/apache/httpd-2.4.54-o111p-x64-vs17/Apache24/modules/mod_fcgid.so

  3. 修改 /wamp/apache/httpd-2.4.54-o111p-x64-vs17/Apache24/conf/httpd.conf

    • FollowSymLinks 后追加 ExecCGI
    DocumentRoot "${SRVROOT}/htdocs"
    <Directory "${SRVROOT}/htdocs">
    ...
    # 修复配置完毕后 403 的问题 https://www.cnblogs.com/xiaqiuchu/articles/16724444.html
    Options Indexes FollowSymLinks ExecCGI
    ...
    </Directory>
    • 在文件最后追加 Include conf/extra/httpd-fcgid.conf
    # apache指定php版本,无需phpapachedll
    # https://blog.csdn.net/zhouzme/article/details/53995566
    # https://www.cnblogs.com/fps2tao/p/9401224.html
    # PHP FastCGI
    #
    # Edit conf/extra/httpd-fcgid.conf to match your php location
    # and uncomment the Include line below.
    Include conf/extra/httpd-fcgid.conf
  4. 创建文件 httpd-fcgid.conf 在 /wamp/apache/httpd-2.4.54-o111p-x64-vs17/Apache24/conf/extra/httpd-fcgid.conf 写入配置如下,注意修改路径为你自己的路径(不修改也可以,客户端会自己修改为你的运行路径)

    LoadModule fcgid_module modules/mod_fcgid.so
    AddHandler fcgid-script .fcgi .php
    FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
    FcgidMaxRequestsPerProcess 1000
    FcgidMaxProcesses 15
    FcgidIOTimeout 120
    FcgidIdleTimeout 120
    AddType application/x-httpd-php .php
    FcgidInitialEnv PHPRC "程序运行目录/wamp/php/php-8.1.9-Win32-vs16-x64"
    FcgidWrapper "程序运行目录/wamp/php/php-8.1.9-Win32-vs16-x64/php-cgi.exe" .php
    # 上传文件的最大尺寸 100MB
    FcgidMaxRequestLen 104857600

mysql版本更新

当前按照 mysql-8.0.28-winx64 版本举例

  1. 下载 指定的 64位mysql 版本,解压缩后放到 /wamp/mysql/

  2. 创建文件 mysql.ini 在 /wamp/mysql/mysql-8.0.28-winx64/mysql.conf 写入配置如下,注意修改路径为你自己的路径(必须先设置为真实的mysql运行路径,初始化需要

    [mysqld]
    basedir=程序运行目录/wamp/mysql/mysql-8.0.28-winx64
    datadir=程序运行目录/wamp/mysql/mysql-8.0.28-winx64/data
  3. 命令行进入到 程序运行目录/wamp/mysql/mysql-8.0.28-winx64/bin 目录,执行以下命令初始化。

    配置:https://www.cnblogs.com/pingcode/p/15839428.html

    修改密码:https://www.cnblogs.com/chloneda/p/12449819.html

    初始化后不要关闭 cmd 窗口,因为会随机生成初始密码,然后根据初始密码来修改 mysql 的密码

    mysqld --initialize --console

秋初 WAMP 集成环境 v2.1的更多相关文章

  1. wamp集成环境开启rewrite伪静态支持

    wamp集成环境在安装完后,默认是没有开启伪静态的,所以有时把项目部署进去时如果源码里包含.htaccess文件的话,可能会出现500错误,这一般是因为不支持伪静态造成的,解决这个问题的办法就是开启伪 ...

  2. WAMP集成环境的安装

    暑假已经正式开始,我的学习计划也开始有了初步的进展,今天学习的主要内容是PHP的基础知识,以及在电脑上面安装了集成的WAMP(Windows+Apache+MySQL+PHP). PHP的基础知识: ...

  3. php Windows系统 wamp集成环境下redis的使用

    先说一下我的本地环境,使用的是wamp集成环境,(Apache 2.4.9.PHP 5.5.12.MySQL 5.6.17) windows下安装PHP扩展: 第一步:找到扩展文件(.dll),htt ...

  4. wamp集成环境 开启rewrite伪静态支持

    什么是伪静态 伪静态就是:动态网页通过重写URL的方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面. 伪静态的目的 最主要的就是迎合搜索引擎方便搜索引擎蜘蛛(Spider) ...

  5. WAMP集成环境更改web根目录

    使用WAMP集成环境,如何更改web根目录 做php开发使用WAMP集成环境的同学大部分有过这样的经历:如果你试图修改web根目录,那么你肯定会想到要修改apache/apache2.2.11/con ...

  6. 关于在windows上的wamp集成环境和xampp上安装mongo扩展

    今天来学习下mongodb,在装PHP扩展的时候本来是一个很轻松的事情,结果并不是我想想的那么简单. 我的集成环境是xampp的php版本是5.6的x86.我开启了安全模式,所以我需要mongo时ts ...

  7. 在wamp集成环境下安装laravel5.2.*框架

    虽然官方一直强烈推荐使用homestead,但是这个相对麻烦一点,所以我还是选择使用wamp集成开发环境.还有这里我只讲解windows系统下的安装,其他例如mac或linux就不写了,此文章是面向刚 ...

  8. WAMP集成环境

    WAMP Windows下的Apache+Mysql/MariaDB+Perl/PHP/Python,一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有 ...

  9. wamp集成环境下帝国备份出错

    我在本地wamp环境下面使用帝国备份王时,报错信息如下: Parse error: syntaxerror, unexpected $end in D:wampwwwhuifuclassfunctio ...

随机推荐

  1. vue3代码编写

    vue3代码编写 团队内的vue3已经升级一年,在这一年中vue也在不停的更新,为了最大化组合式api带来的优势,便需要合理规范代码的编写方式- 1.从vue2到vue3 vue2组件采用配置式API ...

  2. 【干货】MySQL底层架构设计,你了解多少?

    很多开发同学对SQL优化如数家珍,却对MySQL架构一知半解.岂不是只见树叶,不见森林,终将陷入细节中不能自拔. 今天就一块学习MySQL分层架构,深入了解MySQL底层实现原理,以及每层的作用,我们 ...

  3. SQL语句编写

    mybatis插入数据 下面的item.avatarUrl取出的是java实体类里面的属性,所有需要大写 插入的SQL: INSERT INTO `one` VALUES(1,"第一个&qu ...

  4. 详解 Apache Hudi Schema Evolution(模式演进)

    Schema Evolution(模式演进)允许用户轻松更改 Hudi 表的当前模式,以适应随时间变化的数据. 从 0.11.0 版本开始,支持 Spark SQL(spark3.1.x 和 spar ...

  5. 体验Lambda的更优写法和Lambda标准格式

    体验Lambda的更优写法 借助Java8的全新语法,上述Runnable接口的匿名内部类写法可以通过更简单的Lambda表达式达到等效: public class Lambda02 { public ...

  6. MySQL之COUNT(*)性能到底如何?

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. GreatSQL是MySQL的国产分支版本,使用上与MySQL一致. 前言 在实际开发过程中,统计一个表的数据量是经常遇到 ...

  7. Jetpack Compose学习(9)——Compose中的列表控件(LazyRow和LazyColumn)

    原文:Jetpack Compose学习(9)--Compose中的列表控件(LazyRow和LazyColumn) - Stars-One的杂货小窝 经过前面的学习,大致上已掌握了compose的基 ...

  8. Sonatype Nexus3 搭建私有仓库

    Nexus是Sonatype提供的仓库管理平台,Nuexus Repository OSS3能够支持Maven.npm.Docker.YUM.Helm等格式数据的存储和发布:并且能够与Jekins.S ...

  9. Luogu3275 [SCOI2011]糖果 (差分约束)

    逆序建超级源快十倍还行 #include <cstdio> #include <iostream> #include <cstring> #include < ...

  10. Postman如何做接口测试,那些不得不知道的技巧

    Postman如何做接口测试1:如何导入 swagger 接口文档 在使用 postman 做接口测试过程中,测试工程师会往界面中填入非常多的参数,包括 url 地址,请求方法,消息头和消息体等一系列 ...