Ubuntu18 – 安裝 PHP7.3 + Apache + Mysql/MariaDB + phpMyadmin

  • 2019/07/09 更新

切換到 root

第一次需要設定 root 密碼,接著進入 root

另外,若在桌面的話要使用 root 登入可以這麼做

在檔案中加入下面這行

存檔後重新開機,就可以選擇 Login 了。

建議替換倉儲

參考 比較能找到 php 相關較新的版本。

 

建議安裝 aptitude

可以使用

取得較 apt-get 方便的 aptitude,我主要用來查詢 php7 是否存在

因為要查詢套件,無法使用 apt-get 所以要借用 aptitude。如果遇到被鎖定問題,重新新開機 ubuntu 就可以了。或是

 

安裝 vim

 

更改主機時間

查詢時間

使用 ntpdate 修改為台灣時間,

若出現 the NTP socket is in use, exiting,代表不是系統時間校正的問題,所以設定時區為台北。

選擇 Asia – Taipei。

MySQL 8 安裝

參考

接著需要輸入 root 密碼,並詢問下面這兩個選項

第一個選項會使用 caching_sha2_password,第二個會使用 mysql_native_password。但因為怕 phpMyAdmin 登入無法支援,所以我會改成第二個。之後若要修改可到 /etc/mysql/mysql.conf.d/default-auth-override.cnf。

查看安裝的版本是否正確並嘗試登入

接著安全設定

輸入剛剛設定給 root 的密碼即可操作。

MaraiDB 安裝 (我推薦用 MySQL 8)

DB 登入後修改時區為台北(+8:00)

查看時間與時區

修改時區

參考

Apache 安裝

到瀏覽器打上 http://localhost 就可以看到 Apache 預設首頁代表安裝成功。接著啟用 mod_reswite 功能,讓伺服器可以讀取 .htaccess 。參考

這時在 phpinfo() 中可以看到 Configuration > apache2handler 的 Loaded Modules 有 mod_rewrite 就代表啟用成功。

找到 DocumentRoot “/var/www/html” 後,修改如

我喜歡將 <VirtualHost> 包圍 <Directory>,讓每個網站都成為獨立的設定。

DNS 記得設定

不同的主機設定的 DNS 方式都不一樣。需要請洽服務商。如果是 Amazon 主機 (AWS),那麼就要前往 Route 53 設定 A Type

 

若想:網域指定某個路徑

原本網站:http://xxx.com 對應 /var/www/html
希望改成:http://xxx.com 對應 /var/www/html/project 

若想:設定別名 (Alias)

希望網址 http://xxx.com/abc 連到  /var/www/html/cdefg,那就添加

我喜歡將它添加在某個網域底下,也就是 <VirtualHost> 底下,例如

參考

若想:多網域指向同一台主機

  • A.com 指向路徑 /var/www/html/A
  • B.com 指向路徑 /var/www/html/B

以上修改完記得重新啟動 Apache,讓 DNS 生效。

Windows 修改 Hosts 檢查未生效的 DNS

DNS 生效通常需要一段時間,這期間要知道有沒有修改成功,可以先修改自己電腦的 Hosts :C:\WINDOWS\system32\drivers\etc\hosts 底部添加規則:

左至右依序是:IP 網域 #加上註解

存檔後,瀏覽剛新增好的網域,如果 DNS 確實與 <VirtualHost> 設定無誤,就能暫時看到網站了。

修改權限

如果使用非 root 無法上傳的話,可修改 /var/www/html 權限為非 root 的 使用者,如 ubuntu。這樣可以當使用帳號 ubuntu 透過 SFTP/FTP 連接的時候進行編輯。若有開設新網域、子網域,也一定要重新指定路徑權限喔。

若要透過 FTP 上傳,需要注意權限路徑的問題

PHP 安裝

建立第一份 php 測試查看 phpinfo()

網址打 http://localhost/info.php 就可以順利看到 PHP 相關設定資訊。接著安裝相關套件

如果要查詢更多,可以透過 aptitude 查詢可安裝的名稱。若安裝不同的版本號,只需要修改如 php7.x 即可。但確實的名稱建議還是用 search 查詢一下。

接著修改 php.ini

參考這篇修改php.ini

啟動SSL支援

安裝 Git

安裝 Composer

透過 Composer 安裝 phpMyAdmin

複製預設的範例來製作設定檔

1. 若要由 Web 登入

指定 blowfish_secret 密碼要 32 個字。auth_type 使用 cookie。

2. 若要自動登入

不安全但很方便,建議僅在開發時使用,若為 cookie 則務必要指定 user、password。網址進入 phpmyadmin 就不需要輸入帳號密碼,當然也無法登出。

接著匯入 phpmyadmin 的設定資料庫,這樣我們在修改 phpmyadmin 的時候才能儲存設定

從網址連進 http://xxx.xxx.xxx.xxx/phpmyadmin/ 以後,應該就會看到資料庫多出 phpmyadmin 。這可以解決「尚未設定 phpMyAdmin 設定儲存空間,部份延伸功能將無法使用。」的問題。

Port 設定

如果希望用 http://localhost:9000 訪問你的專案,可以這麼設定

添加如

接著添加想要對應的路徑

SSH 安裝

介面改為漢語(臺灣)

預設沒有,要下指令

再運行

接著用放大鏡搜尋 Language Support > Install/Remove Languages > Chinese (traditional) > Apply,安裝好後會再列表看到漢語(台灣),切換到頁籤 Regional Formats,選擇漢語台灣 > Apply System-Wideot > 重新啟動電腦

登入後進入 Language Support 並調整 Language 為臺灣。再進入 Settings > Region & Language > Language anguage 選擇漢語(臺灣) > 重新啟動 > 顯示中文了!

 

安裝注音

進入像是市集的 Ubuntu 軟體 > 搜尋 gcin > 安裝 。

完成後 > 設定 > 地區案語言 > 管理安裝的語言 > 鍵盤輸入法系統 > gcin > 重新啟動就可使用了

 

Comments

  1. Feeey个人博客
    2017-02-28 - 02:02

    博主最近没怎么更新啊,我来转转。

  2. “MaraiDB 預設不讓 root 登入 phpmyadmin,加入這行可解除”.感謝,解決了困擾好久的難題

發表迴響