[部署] 配置 Apache, PHP, MySQL, phpMyAdmin 在本機 ( macOS )
TWGD / 2018-12-14
版本資訊:
</br>
Apache
sudo apachectl starthttpd -v若打開瀏覽器輸入 http://localhost,如果看到『 It works! 』,代表成功開啟 Apache 囉!
</br>
其他 Apache 操作命令:
停止 Apache:
sudo apachectl stop
重啟 Apache:
sudo apachectl restart
</br>
預設根目錄
http://localhost/ 系統預設的根目錄是放在這裡:
/Library/WebServer/Documents/
❗ unsupported type: quote</br>
PHP
❗ unsupported type: quotehttpd.conf 這個檔案來修改:
sudo vim /etc/apache2/httpd.conf# 註解並存檔:
#LoadModule php7_module libexec/apache2/libphp7.sosudo apachectl restart</br>
試著在根目錄新增一個檔案 phpinfo.php,內容為:
<?php phpinfo(); ?>
打開瀏覽器輸入 http://localhost/phpinfo.php,若看到 PHP 版本資訊,就表示成功了。
</br>
MySQL
下載 MySQL
首先,要自行到官網下載。官網下載頁面
我下載的是目前最新版的 “mysql-8.0.13-macos10.14-x86_64.dmg” 安裝包。
</br>
安裝 MySQL
照著安裝介面的步驟安裝即可。
</br>
啟動 MySQL
有兩種方式:
sudo /usr/local/mysql/support-files/mysql.server start</br>
command line 設定 zsh 加入 環境變數 path
為方便在 command line 使用 mysql 命令,需要一些設定。
我的 shell 由 bash 改成 zsh,因此以 zsh 的操作為例。
.zshrc 檔,並用 vim 編輯:
cd ; vim .zshrcexport PATH="/usr/local/mysql/bin:$PATH".zshrc 檔,或是重啟 終端機 就可以了:
source ~/.zshrc</br>
到這邊已經可以參考 MySQL 官方文件的教學,使用 command line 來自行設定密碼及操作資料庫了。
</br>
解決 MySQL 8.0 在 Node.JS 的登入問題
若你使用 MySQL 8.0,可能會遇到使用預設創建 user,密碼卻無法成功登入的問題。這可能是 Node.JS 無法支援 MySQL 8.0 caching_sha2_password 的問題,必須改回使用 mysql_native_password。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'</br>
phpMyAdmin
下載 phpMyAdmin
首先,自行到官網下載 phpMyAdmin。
</br>
安裝 phpMyAdmin
/Library/WebServer/Documents/ 建一個 phpmyadmin 資料夾:cd /Library/WebServer/Documents/
sudo mkdir phpmyadmin
cp -r phpMyAdmin-4.2.2-all-languages/. /Library/WebServer/Documents/phpmyadmin/瀏覽器輸入 http://localhost/phpmyadmin/,就可成功看到 phpMyAdmin 的登入畫面。
</br>
解決 phpMyAdmin 登入時出現的 #2002 error 問題
若登入 phpMyAdmin 的時候出現下面錯誤碼:
mysqli_real_connect(): (HY000/2002): No such file or directory
</br>
修改 phpmyadmin 資料夾當中的 config.inc.php 檔:
將
$cfg['Servers'][$i]['host'] = 'localhost';
改成
$cfg['Servers'][$i]['host'] = '127.0.0.1';
</br>
新增 /var/mysql 資料夾:
sudo mkdir /var/mysql
建立 “/tmp/mysql.sock” 及 “/var/mysql/mysql.sock” 的連結:
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
</br> </br>