編輯 hosts 檔案測試網站

很多時候要搬遷網站到其他主機, 或者把開發中的網站上線前測試, 可以在本機修改 hosts 檔案, 這樣只有自己看到新的網站, 其他人則仍舊瀏覽舊有網站, 待測試完成後才正式修改 DNS 紀錄。電腦會先在 hosts 檔案嘗試找出 hostname 對應的 IP, 如果沒有才會透過 DNS 解析 IP. Linux 修改 hosts 多數 Linux 發行版的 hosts 檔案儲存位置是 /etc/hosts, 例如要將域名 …

Python 讀寫 JSON 格式檔案

JSON (JavaScript Object Notation) 是很常用的格式, 多數用於伺服器及網頁應用程式間傳送資料。Python 內建的 json 模組可以處理 JSON 格式的檔案。 Python 讀取 JSON 用 json 模組讀取 JSON 格式十分方便, 用 json.loads() 讀取後, 會將資料以 dictionary 回傳, 例如: 上面的例子 person 變數是 …

Ubuntu 20.04 LTS 安裝 Snap

Snap 又名 Snappy, 是 Ubuntu 母公司 Canonical 開發的套件管理工具。以下是在 Ubuntu 20.04 LTS 安裝 snap 的步驟。 1. 更新套件 在開前先更新系統的套件: Ubuntu 20.04 LTS install snap $ sudo apt-get update 2. 安裝 snap …

使用 xz 及 tar 壓縮檔案及目錄

xz 是 Linux 及其他 Unix like 環境下的壓縮工具, 比起 zip, gzip 或其他壓縮格式有更佳的壓縮率, 可以把檔案壓縮得更細少。以下是 xz 指令的使用方法。 如果只是壓縮單一檔案, xz 使用十分簡單直接, 只要在 xz 指令後面加上檔案即可: xz filename 或 xz filename 例如要壓縮 filename.pdf, 使用以下指令: $ …

RHEL / Rocky Linux 8 安裝多個 PHP 版本

對於測試用途為主的主機, 或者供應商很常需要在主機安裝多個不同的 PHP 版本, 該不同的 PHP 版本可以同時執行。 用 PHP-FPM 執行的 PHP 環境有很多優點, 除了可以安裝多個 PHP-FPM 外, 也可以對不同的 domain/subdomain 設定不同的 PHP-FPM pool, 給予不同的設定或權限。 以下文章會在 Rocky Linux 上安裝不同的 PHP 版本, 並配置到 Apache …

解决 Postfix: parameter inet_interfaces: no local interface found for ::1

在一台沒有 VPS 關閉了 IPv6 後, 原來正常使用的 Postfix 不能使用, 重新啟動也失敗, 先查看一下錯誤信息: /linux/ # systemctl status postfix 看到以下錯誤: fatal: parameter inet_interfaces: no local interface found for ::1 看來是關閉了 IPv6 導致這個問題. 解決方法 …

解決 MySQL Authentication plugin ‘caching_sha2_password’ cannot be loaded 錯誤

這個是 MySQL 8 在遠端登入時可能出現的錯誤信息: ERROR 2059 (HY000): Authentication plugin ‘caching_sha2_password’ cannot be loaded MySQL 8 預設的登入認證方式是 caching_sha2_password, 如果登入的電腦是安裝 MySQL 5.7 Client, 則是使用 mysql_native_password 登入認證, 產生兼容性問題, 解決方法有以下兩個. 解決方法 1: 把 …