首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Linux 下從零搭建 Zend Framework 2 開發環境:腳本自動化安裝與 Nginx 整合

     編輯:PHP 相關知識

Linux 下從零搭建 Zend Framework 2 開發環境:腳本自動化安裝與 Nginx 整合

Zend Framework 2(現 Laminas)是 PHP 官方框架,雖國內較少用,但架構嚴謹、適合企業級應用。本文提供一鍵安裝腳本(LNMP + mod_fcgid),並演示用 Composer 安裝官方骨架專案、配置 Nginx 虛擬主機、驗證環境的完整流程。

一、一鍵環境安裝腳本 install_web_develop.sh

支援 CentOS/RedHat/Debian/Ubuntu,自動安裝:

  • 基礎套件:vim, git, wget, gcc, autoconf, libjpeg, libpng, freetype, libxml2, zlib, openssl, pcre, bison, cmake 等
  • Percona Server 5.6(MySQL 增強版)
  • Tengine(淘寶優化 Nginx)+ OpenSSL + PCRE
  • PHP 5.3/5.4 可選,編譯參數含:iconv, mcrypt, mhash, gd, curl, mbstring, xmlrpc, zip, soap, fpm, pdo_mysql, memcache
  • 自動配置 php.ini、php-fpm.conf、nginx.conf、my.cnf、iptables 開放 80/3306、rc.local 開機自啟
# 下載並執行(需 root)
wget https://example.com/install_web_develop.sh
chmod +x install_web_develop.sh
./install_web_develop.sh
# 或分步:./install_web_develop.sh -base && ./install_web_develop.sh -m && ./install_web_develop.sh -p 5.4 && ./install_web_develop.sh -n
完整腳本內容較長,請參考原文或自行根據需求精簡。生產環境建議使用 Ansible/Docker 替代手動腳本。

二、安裝 ZF2 官方骨架專案

cd ~/work
git clone https://github.com/viticm/ZendSkeletonApplication
cd ZendSkeletonApplication
php composer.phar self-update
php composer.phar install   # 需外網下載依賴,耐心等待

# 部署到網站目錄
mkdir -p /data/www/zf2
cp -r * /data/www/zf2/

三、Nginx 虛擬主機配置

server {
    listen 80;
    server_name zf2.local.com;
    root /data/www/zf2/public;
    index index.php;

    location ~* \.(js|ico|gif|jpg|png|css|jpeg|swf)$ {
        access_log off;
        expires 2d;
    }

    location / {
        if (!-f $request_filename) {
            rewrite ^(.+)$ /index.php?$1& last;
        }
    }

    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;  # 對應 php-fpm 監聽
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht { deny all; }
}

四、驗證與常見問題

  1. 修改 /etc/hosts(或本機 hosts)綁定:192.168.x.x zf2.local.com
  2. 瀏覽器訪問 https://zf2.local.com 應看到 ZF2 歡迎頁。
  3. 空白頁面? 在 public/index.php 頂部加入:
    ini_set('display_errors', 'on'); error_reporting(E_ALL); 觀察錯誤,常見缺擴展或權限問題。
  4. Apache 用戶? 需載入 mod_fcgid,配置 FcgidWrapper 指向 php-cgi。

五、PHP 版本切換技巧

  • Web 端:修改 httpd.conf 或 nginx.conf 的 fastcgi_pass 指向不同版本 PHP-FPM socket/port。
  • CLI 端:調整 $PATH 優先順序或用 update-alternatives 管理 php 鏈接。

雖然 ZF2 學習曲線較陡、社群資源較少,但其模組化、事件驅動、依賴注入等現代架構思想值得學習。本文腳本與配置可作為「手動構建 LNMP + 框架」的教學樣板,實際專案建議採用 Docker Compose 或 Kubernetes 實現環境一致性與彈性擴縮容。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved