面對高流量網站的事前準備

這邊的高流量,絕對不是即時在線人數幾百人這種小數字,而是多達萬以上,當網站的即時在線人數多達萬人以上,要面對的就不是單純想著把 Apache 換成 Nginx 就可以應付高流量,或是快取有沒有上好上滿的問題。

閱讀全文〈面對高流量網站的事前準備〉

透過 Varnish 自建 CDN 加速圖片載入速度

前陣子寫了篇透過 Varnish 讓 WordPress 速度起飛,以及透過 Cloudflare 減少 WordPress 圖片的流量,不過雖然使用的是 Cloudflare Pro 方案,不過可能因為流量太大(月流量多達 100T),所有圖片都被導至美國的節點,若遇到海纜塞車或是故障,那個速度真是精美,拿掉 Cloudflare 會有可怕的流量從 GCP 輸出,而美國輸出圖片實在是太慢了,想了想要馬升級 Cloudflare 方案讓圖片可以台灣輸出,不然就是選擇便宜一點的方式輸出圖片囉! 閱讀全文〈透過 Varnish 自建 CDN 加速圖片載入速度〉

在 CentOS 7 安裝 Nginx、PHP 7、MySQL(LEMP)使用 DigitalOcean

去年寫了篇在 Fedora 上準備 LEMP 環境的文章,不過正常來說應該是比較少人會使用 Fedora 作為伺服器來使用,而網路上最推薦的系統不是 ubuntu 就非 CentOS 莫屬,至於除了 LEMP 外還有其他種組合,像是:

  • LAMP = Linux + Apache + MySQL(MariaDB) + PHP
  • WAMP = Windows + Apache + MySQL(MariaDB) + PHP
  • WIMP = Windows + IIS + MySQL(MariaDB) + PHP

除了上面的組合外,還有其他各式各樣的組合,而 LEMP (也有人稱作 LNMP)則是 Linux + Nginx + MySQL(MariaDB) + PHP ,舉例來說像是本站就是使用 LNMP 的架構,不過前面有多了一個 Varnish 快取的機制,這個有機會再來談談囉! 閱讀全文〈在 CentOS 7 安裝 Nginx、PHP 7、MySQL(LEMP)使用 DigitalOcean〉

自架 WordPress 上傳媒體發生 HTTP 錯誤

WordPress 上傳檔案大小很多人都了解,透過更改 php.ini 可以讓上傳的檔案大一點,不過有時候卻發現檔案大小不超過限制,上傳又會出現 HTTP 錯誤,那是怎麼回事呢? 閱讀全文〈自架 WordPress 上傳媒體發生 HTTP 錯誤〉

WordPress Nginx rewrite 規則

網路上雖然蠻多教學都會教你把請求轉到 index.php,看似簡單不過還有些地方要注意,wp-admin 可能會導致 404 發生,3 行簡單的做法就能正常運作囉。
location / {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

Let’s encrypt 免費 SSL 憑證教學

雖然這篇文來的有點遲,不過還是不免俗的簡單介紹一下免費的憑證,Let’s Encrypt 是由多家大型公司為推廣 HTTPS 而成立的一個組織,網路上已經有蠻多教學文章了,不過個人認為 EFF(電子前哨基金會)推的 certbot 最為好用,至於網路上 SSL For Free,個人是不太信任這種服務就是了。 閱讀全文〈Let’s encrypt 免費 SSL 憑證教學〉

Nginx 錯誤 Address already in use 解決

原本 dnf install nginx 用得好好的,也不知道是怎樣,就想加一些 module,試了一下 Google 的 PageSpeed Module,他有提供個自動化安裝腳本,這才想說不對,慘慘慘總之後來先是 rm -rf 自動化腳本安裝的 Nginx,先來試試 start nginx,問題浮現啦 Orz。

看一下錯誤紀錄 Address already in use,當然也想說那很簡單先 stop,這才驚覺不對好像 stop 不了,我的網站還能連。

閱讀全文〈Nginx 錯誤 Address already in use 解決〉

Nginx 多網站配置

網頁伺服器環境的建置可以先參閱先前的文章:在 Fedora 25 安裝 Nginx、PHP-FPM、MariaDB(LEMP)

當你的主機裝好網頁伺服器,你總會想難道一台主機只能一個網站嗎?當然不是,一台主機是能夠架設非常多網站的,這稱作 Virtual Host,任何現代網頁伺服器都支援這功能,至於怎麼做呢?筆者當然一步步帶你囉。

繼承先前文章,主機與伺服器環境準備好後就能開始架站,為了方便管理可以像筆者我一樣為 Nginx 網頁伺服器建立一個設定檔資料夾,讓不同網站的設定檔放在同一個資料夾方便管理。
先下這行指令
mkdir /etc/nginx/vhost
在 Nginx 的設定資料夾內新增一個名為 vhost 的資料夾
之後使用文字編輯軟體例如 Nano、Vi⋯⋯等,編輯 Nginx 的設定檔
vi /etc/nginx/nginx.conf

新增include /etc/nginx/vhost/*.conf;在 http { 這段內 }。

閱讀全文〈Nginx 多網站配置〉

在 Fedora 25 安裝 Nginx、PHP-FPM、MariaDB(LEMP)

LEMP 算是一個簡稱,使用 Linux 作業系統、Nginx 網頁伺服器、PHP-FPM 動態語言、MariaDB(MySQL)資料庫,網路上其實挺多一鍵安裝包的,不過個人偏好自己來,第一在自己來的過程中可以學習,第二也可以避免一鍵安裝包可能的風險,畢竟你也不清楚是不是包了什麼,LEMP 速度快穩定性高,雖然目前網頁伺服器的市佔率還是 Apache 最高,不過 Nginx 的輕巧快速與設定簡單易懂,相信值得一試。

本次使用 Fedora Server 25 作為示範,系統安裝就不再贅述,承租 VPS 都能輕易的選擇 Fedora 做為系統。

進到系統內先把系統更新吧
dnf update -y

更新完成後先來設定一下系統,使用個人習慣的編輯軟體去更改設定,例如 nano、vi⋯⋯等
閱讀全文〈在 Fedora 25 安裝 Nginx、PHP-FPM、MariaDB(LEMP)〉