Tag: Nginx
LEMP 全寫是 Linux + Nginx, + MySQL (MariaDB) + PHP。Nginx (發音能同 engine x) 是一款以性能取向的網頁伺服器, 較 Apache 使用較少系統資源, 以下是在 CentOS 8 安裝 Nginx, MariaDB 及 PHP 的教學. 安裝 Nginx CentOS …
DDOS 是十分常見的攻擊,即使是一般使用者,下載一套 DDOS 軟體,或者直接安裝 kali linux, 便可以很簡單發動 DDOS 攻擊,除了遇到 DDOS 攻擊才採取攔截外,也可以透過一些 Linux 設定來預防 DDOS 攻擊,以下會列出一些預防 DDOS 的設定及 Firewalld 規則。 Firewalld 限制每個 IP 連線數量 以下會設定 Firewalld 限制每個 IP 在 60 …
HTTP 伺服器在高負載時反應會變慢, 但檢視系統的使用資源, 例如 CPU, 記憶體及 Load Average 則很正常, 當重新啟動 HTTP 伺服器後, 問題又暫時得以解決。用以下 netstat 檢查連線的統計資料: # netstat -nat | awk ‘{print $6}’ | sort | uniq -c | sort …
有一台原本使用 Apache 的 Web Server 換成 Nginx 後, 其中一個 PHP 的上傳檔案程式遇到錯誤, 原本以為是 PHP 的 max_execution_time 或 max_upload_filesize 設定太小出問題。 後來在 Nginx 的 Log 找到以下錯誤: client intended to send too large …
PHP-FPM 預設的 PM (process manager) 會設定為 “dynamic”, 除了 dynamic, 還有 static 及 ondemand, 以下是 PHP 官方對這些設定的解釋: pm = dynamic – the number of child processes is set dynamically based …
現在很多網站也是使用 Nginx 架設網站伺服器, 相比起 Apache 有更高效能及負載能力。 最近資安廠商 F5 Networks 宣佈會收購 Nginx, Nginx 被收購後仍會維持開源, 原來的管理層也會留下來。 不知 Nginx 往後會不會像 MySQL 一樣, Nginx 在新公司下繼續開發, 而創辦人之類的就另起爐灶, 建立可以跟 Nginx 兼容的替代 fork.
gzip 是一種壓縮工具, Web Server 透過 gzip 將數據壓縮, 再發送給使用者的瀏覽器解壓。這樣所需傳送的數據便會減少, 提昇網站的速度。 以下是在 Nginx 開啟 gzip 壓縮的方法。 在開啟 gzip 前, 可以先用 curl 檢視一下目前 Nginx 是否有開啟 gzip, 輸入以下指令: /linux/curl $ curl -H “Accept-Encoding: …
WordPress 可以自行設定固定網址 (Permalinks) , 以可讀性較高的格式呈現, 如果沒有設定, 預設會使用類似 ?p=123 結尾的網址。 一般上如果在 Apache 上安裝 WordPress, WordPress 內建的 .htaccess 會使用 mod_rewrite 自動進行對應。 但 Nginx 並不支援 mod_rewrite, 需要編輯 Nginx 的設定檔。 開啟網站的 Nginx 設定檔, …
在預設的情況下, HTTP 的 Header 會包含了 Web Server 及 PHP 的版本, 基於安全理由, 可以用以下方法隱藏 Apache, Nginx 及 PHP 的版本資訊。 Apache 開啟 Apache 的 httpd.conf, CentOS 預設位置是 /etc/httpd/conf/httpd.conf: # vi /etc/httpd/conf/httpd.conf 找到 …
什麼是反向代理 Reverse Proxy? 反向代理是在真實伺服器與客戶端間的代理伺服器, 當使用者透過客戶端 (瀏覽器) 訪問網站時, 反向代理伺服器會將請求轉送到背後的真實伺服器, 再將網站的結果傳送給客戶端。真實伺服器可能是本機的其他 Port, 也可能在內部網路, 或者在其他外部網路, 這樣使用者不會知道真實的伺服器在那裡, 可以隱藏真正伺服器的位置, 而且也可以實現 load balancing. 安裝 Nginx 可以用 yum 或 apt-get 安裝: $ sudo yum install nginx …