解決 MySQL 錯誤 – ERROR 1819 (HY000)

MySQL 5.7 為了增加系統安全性, 加入了 validate_password plugin, 可以自定 MySQL 使用者帳號密碼的強度, 當建立 MySQL 帳號或者修改密碼時, 密碼強度不符合要求, 會出現以下錯誤: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements. 解決方法是設定一組比較複雜的密碼, 以符合 MySQL …

Nginx 開啟 gzip 壓縮設定

gzip 是一種壓縮工具, Web Server 透過 gzip 將數據壓縮, 再發送給使用者的瀏覽器解壓。這樣所需傳送的數據便會減少, 提昇網站的速度。 以下是在 Nginx 開啟 gzip 壓縮的方法。 在開啟 gzip 前, 可以先用 curl 檢視一下目前 Nginx 是否有開啟 gzip, 輸入以下指令: /linux/curl $ curl -H “Accept-Encoding: …

Nginx 設定 WordPress 固定網址 Permalinks

WordPress 可以自行設定固定網址 (Permalinks) , 以可讀性較高的格式呈現, 如果沒有設定, 預設會使用類似 ?p=123 結尾的網址。 一般上如果在 Apache 上安裝 WordPress, WordPress 內建的 .htaccess 會使用 mod_rewrite 自動進行對應。 但 Nginx 並不支援 mod_rewrite, 需要編輯 Nginx 的設定檔。 開啟網站的 Nginx 設定檔, …

Ubuntu 列出及查詢已安裝的套件

安裝、更新及管理套件是系統管理員的日常維護工作,以下文章會示範在 Ubuntu 下,列出所有已安裝套件,及查詢套件是否有安裝的方法。 apt apt 是指令模式的套件管理工具, 要列出所有已安裝的套件: $ sudo apt list –installed 由於安裝的套件有很多, 最好使用 pipe 將結果輸出到 head 或 less 指令顯示: $ sudo apt list –installed | head 或 $ …

SSH 遠端主機免密碼執行指令

系統管理員很多時也有多台伺服器需要管理, 以下會示範如何透過 SSH 在遠端主機執行指令, 並不用輸入密碼。 本機設定 首先在本機用 ssh-keygen 建立 private key 及 public key, 對於 ssh-keygen 的提問, 直接按 Enter 鍵即可: $ ssh-keygen -t rsa Generating public/private rsa key pair. …

Shell Script 檢查檔案是否有指定字串

在 Linux CLI 下可以用 grep 指令, 將檔案包含有指定字串的行印出, 或者配合 -c 參數直接印出匹配的行數, 例如: $ grep -c string filename.txt 如果在 Shell Script 要檢查檔案是否有指定字串, 當然可以檢查以上指令輸出的數值, 但另一個更方便的方法, 是用 grep 的 -q 參數, 具體寫法是這樣: grep …

Nginx 設定反向代理 Reverse Proxy

什麼是反向代理 Reverse Proxy? 反向代理是在真實伺服器與客戶端間的代理伺服器, 當使用者透過客戶端 (瀏覽器) 訪問網站時, 反向代理伺服器會將請求轉送到背後的真實伺服器, 再將網站的結果傳送給客戶端。真實伺服器可能是本機的其他 Port, 也可能在內部網路, 或者在其他外部網路, 這樣使用者不會知道真實的伺服器在那裡, 可以隱藏真正伺服器的位置, 而且也可以實現 load balancing. 安裝 Nginx 可以用 yum 或 apt-get 安裝: $ sudo yum install nginx …