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

Linux 從原始碼編譯安裝 Apache 2 + PHP 5 + MySQL

     編輯:PHP 相關知識

前置準備

  • 作業系統:Linux(示範環境)
  • 工作目錄:/home/wj
  • 安裝前綴:/usr/local/apache2、/usr/local/php5
  • 下載來源:Apache、PHP

Apache 2 編譯安裝

cd /home/wj
tar -zxvf httpd-2.0.54.tar.gz
mv httpd-2.0.54 apache2
cd apache2
./configure --prefix=/usr/local/apache2 --enable-module=so
make
make install

關鍵參數: --enable-module=so 啟用 DSO 動態模組支援,PHP 安裝時需用 apxs。

PHP 5 編譯安裝

cd /home/wj
tar -zxvf php-5.0.4.tar.gz
mv php-5.0.4 php5
cd php5
./configure --prefix=/usr/local/php5 \
  --with-apxs2=/usr/local/apache2/bin/apxs \
  --with-config-file-path=/usr/local/lib \
  --enable-track-vars \
  --with-xml \
  --with-mysql
make
make install

# 複製預設設定檔
cp php.ini-dist /usr/local/lib/php.ini

常用編譯參數說明:

  • --with-apxs2:指定 Apache apxs 路徑,編譯為 Apache 模組
  • --with-mysql:內建 MySQL 原生驅動
  • --with-xml:XML 支援
  • --enable-track-vars:啟用 $HTTP_GET_VARS 等舊式變數(PHP 5 預設開啟)

Apache 設定檔修改

vi /usr/local/apache2/conf/httpd.conf

# 1. 管理員信箱
ServerAdmin admin@yourdomain.com

# 2. 文件根目錄
DocumentRoot "/home/httpd/html"

# 3. 安全性:移除 Indexes 避免目錄列表
Options FollowSymLinks MultiViews

# 4. 預設首頁順序
DirectoryIndex index.php index.phtml index.php3 index.html index.htm

# 5. PHP 型別對應
AddType application/x-httpd-php .php .phtml .php3 .inc
AddType application/x-httpd-php-source .phps

PHP 設定檔調整

vi /usr/local/lib/php.ini
register_globals = Off  # 強烈建議關閉,安全性考量

啟動與測試

/usr/local/apache2/bin/apachectl start

# 建立測試頁
echo '<?php phpinfo(); ?>' > /home/httpd/html/info.php

# 瀏覽 https://yourserver/info.php

開機自動啟動

# 建立啟動腳本 /etc/rc.d/init.d/apache2d
#!/bin/bash
/usr/local/apache2/bin/apachectl start

chmod +x /etc/rc.d/init.d/apache2d
ln -s /etc/rc.d/init.d/apache2d /etc/rc3.d/S90apache2  # 運行層級 3 啟動
ln -s /etc/rc.d/init.d/apache2d /etc/rc0.d/K20apache2  # 關機停止

現代化部署建議

  • 生產環境請使用套件管理器 yum/dnf/apt 安裝穩定版,或 Docker 容器化部署
  • PHP 5.0/5.4/5.6/7.0/7.4 均已 EOL,請直接部署 PHP 8.2+
  • Apache 2.4 + Event MPM + PHP-FPM 效能優於 Prefork + mod_php
  • MySQL 建議改用 MariaDB 或 Percona Server
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved