Win10配置Apache2.4+PHP7+MySQL5.7

王東昇KevinTech發表於2018-09-04

基本說明

  • 軟體版本:Apache2.4+PHP7+MySQL5.7 軟體下載

Apache安裝

  1. 下載並解壓檔案
  2. 修改“Apache.conf”行數為大致的行數,請根據自身情況進行調整。
#Line38-39
#Software installation directory
Define SRVROOT "C:\ProgramZIP\Apache24"
ServerRoot "${SRVROOT}"

#Line74
#Solve the 403 problem(Part 1)
LoadModule access_compat_module modules/mod_access_compat.so    

#Line183-187
# php7 support
LoadModule php7_module "C:/ProgramZIP/php-7.2.9/php7apache2_4.dll"
AddType application/x-httpd-php .php .html .htm
# configure the path to php.ini
PHPIniDir "C:/ProgramZIP/php-7.1.9"

#Line236-241
#Solve the 403 problem(Part 2)
<Directory />                           
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    allow from all
</Directory>

#Line284-289
#Set alias for development(Optional)
Alias /php "D:/Workspace/Development/PHP"
<Directory "D:/Workspace/Development/PHP">
        AllowOverride all
        Order allow,deny
        Allow from all
</Directory>

3.安裝除錯Apache 
該步操作需要在有管理員許可權的命令列中執行,,注意當前路徑的選擇。 
第一行是安裝註冊apache的命令,第二步是啟動apache的命令。 
如果第二行啟動失敗,可以執行第三行,以檢查在啟動過程中何處出現問題。

C:\ProgramZIP\Apache24\bin>  httpd.exe -k install
C:\ProgramZIP\Apache24\bin>  net start apache
C:\ProgramZIP\Apache24\bin>  httpd.exe -n "apache" -t

443埠占用

如果出現提示443埠被佔用,可以通過命令netstat -aon|findstr "443"檢視是哪個軟體佔用了該埠,視情況調整或關閉該軟體(不推薦修改apache配置繞過該問題)。 
本人在該情況下發現是VMware佔用了該埠,在”VMware->編輯->首選項->共享虛擬機器”中可以修改該設定,所以我這邊443埠被佔用的情況就被解決了。

效果

至此我們已經完成了Apache的安裝,可以通過安裝目錄下的”ApacheMonitor.exe”啟動Apache伺服器 
通過127.0.0.1訪問到測試首頁。

 

MySQL安裝

1.下載並解壓檔案 
2.新增環境變數C:\ProgramZIP\mysql-5.7.19\bin表示安裝目錄下的bin資料夾,請自行調整路徑。 
(理論上不配置環境變數也可以實現資料互通,但是不新增環境變數用命令列執行操作就很麻煩) 
3.在安裝目錄中建立”my.ini”檔案,用記事本編輯該檔案,”basedir”是安裝目錄,”datadir”是資料庫存放的資料夾(該資料夾的路徑可自定義,但是必須是空的data資料夾)

[client]
port=3306
default-character-set=utf8
[mysqld]
port=3306
character_set_server=utf8
basedir=C:/ProgramZIP/mysql-5.7.19
datadir=D:/SQLDatabase/MySQL/data

4.安裝除錯MySQL 
該步操作需要在有管理員許可權的命令列中執行,注意當前路徑的選擇。 
第一步為初始化資料庫,第二步為註冊服務,第三步為開啟服務。

C:\ProgramZIP\mysql-5.7.19\bin>  mysqld --initialize
C:\ProgramZIP\mysql-5.7.19\bin>  mysqld -install MySQL
C:\ProgramZIP\mysql-5.7.19\bin>  net start MySQL

5.修改MySQL資料庫密碼 
在自己建立的data資料夾中有一個名叫“XXXXXX.err”的檔案,用記事本開啟該檔案。 
找到”A temporary password is generated for root@localhost:”一行 
該行最後的隨機字元就是新建的MySQL資料庫root帳號的預設密碼。 
然後在命令列中執行命令

C:\ProgramZIP\mysql-5.7.19\bin>mysql -u root -p
Enter password: ************
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

 

PHP安裝

1.下載並解壓檔案 
2.將”php.ini-development”檔案複製一份並命名為”php.ini”,用記事本開啟並修改。 
ext資料夾路徑需要根據自身情況做出調整,另外僅需要載入兩個模組即可。

extension_dir = "C:/ProgramZIP/php-7.2.9/ext"   #Line738
extension=php_mysqli.dll            #Line905
extension=php_pdo_mysql.dll         #Line909

3.儲存檔案,重啟Apache

PHP測試

資訊頁面測試

測試程式碼

<?php
        phpinfo();
?>

測試效果

 

連線資料庫測試

注意各教程版本 
本文使用的是PHP7 
應使用測試程式碼

<?php
		/*
		資料庫連線測試
		 */
        $host = "127.0.0.1"; //mysql主機地址
        $user = "root"; //mysql 登入賬戶
        $pwd = "123"; //mysql登入密碼
        $conn = new mysqli($host, $user, $pwd); //連線資料庫
        if (!$conn) {//判斷
            echo 'MySql Connect Failed!' . mysql_error();
        }else{
        	echo "MySql Connect Success!";
        }        
        mysqli_close($conn); // 關閉mysql連線
?>

而不是舊的

<?php
        $host = "127.0.0.1"; //mysql主機地址
        $user = "root"; //mysql 登入賬戶
        $pwd = "mypassword"; //mysql登入密碼
        $conn = mysql_connect($host, $user, $pwd); //連線資料庫
        if (!$conn) {//判斷
            echo '連線資料庫失敗: ' . mysql_error();
        }
        echo "mysql 連線成功!";
        mysql_close(); // 關閉mysql連線
?>

區別在於

$conn = new mysqli($host, $user, $pwd);           $conn = mysql_connect($host, $user, $pwd);
mysqli_close($conn);                               mysql_close();

 

測試頁面 
 
 

 

相關文章