秋初 WAMP 集成環境 v2.1

基於QT的PHP集成開發環境v2.1

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

介面預覽

image

已實現功能

注意

  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

步驟

參考://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/
    image

  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 埠衝突,參考 //blog.csdn.net/qingtiancao/article/details/89187348

  1. 下載 指定的 2.4.x 版本的 Apache ,解壓縮後放到 /wamp/apache/
    image

  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 的問題 //www.cnblogs.com/xiaqiuchu/articles/16724444.html
        Options Indexes FollowSymLinks ExecCGI
        ...
    </Directory>
    
    • 在文件最後追加 Include conf/extra/httpd-fcgid.conf
    # apache指定php版本,無需phpapachedll
    # //blog.csdn.net/zhouzme/article/details/53995566
    # //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/
    image

  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 目錄,執行以下命令初始化。

    配置://www.cnblogs.com/pingcode/p/15839428.html
    修改密碼://www.cnblogs.com/chloneda/p/12449819.html

    初始化後不要關閉 cmd 窗口,因為會隨機生成初始密碼,然後根據初始密碼來修改 mysql 的密碼

    mysqld --initialize --console