VPS 服務器上安裝 Webinoly 安裝包是非常容易,它優化了 LNMP WEB 服務性能,增強 WordPress 後台登錄的安全性,讓您的網站更可靠的配置。
我在前幾篇文章中,有簡單的介紹 Webinoly 安裝方法,這一篇裡,會更詳細介紹 Webinoly 安裝及功能,更容易上手 VPS 服務器。
內容目錄:
選擇一台 VPS 服務器
Webinoly 只能在 Ubuntu 16.04 LTS 系統上運行,所以選擇一台 VPS 是很重要的事情,有的主機商只有配置 Ubuntu 14.04 系統,就無法順利安裝;目前測試 Vultr、Digital Ocean、Google Cloud Platform (GCP)、Linode 都可以順利安裝完成。
以 Linode 2G VPS 為例:
建立一個新系統 (Rebuild)

建立好之後,點取控制台的 boot,啟動你的 VPS 服務器。
使用 PuTTY 或 Xshell5 登入SSH,先更新 Ubuntu 16.04 LTS 系統:
sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get -y autoremove
選擇時區, Asia –> Taipei
dpkg-reconfigure tzdata

開啟 Linode VPS 的 TCP BBR 優化算法
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
保存生效:
sysctl -p
回覆狀態:
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
表示 BBR 功能已成功啟動。
開始安裝 Webinoly LNMP
wget -qO weby qrok.es/wy && sudo bash weby 3
等待十幾分鐘,安裝完成後,將最後的 MySQL 密碼複製下來:

設置 HTTP 網頁身分認證
sudo httpauth -add
HTTP-Auth User: yungke
HTTP-Auth Password: 12345
這是登入 IP:22222 工具網頁及 WordPress 後台的網頁認證,如圖:

開啟 SFTP 功能
sudo webinoly -login-www-data
Webinoly 已預設帳號為 www-data,我們只要設置 SFTP 密碼:
sudo passwd www-data
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
開始建立一個 WordPress 網站
你的 DNS 管理建立一組 A 紀錄指向你的 VPS 服務器,我還要替網站安裝 SSL 免費證書,所以要多一個 www 別名,如圖:

sudo site example.com -wp
回復內容,按 Y 及 Enter
Do you need to setup new MySQL database? [Y/n]
Create WP-Config file automatically? [Y/n]
Database Host [localhost]:
Database Name [webinoly_yungke_me]:
Database User [webinoly_yungke_me]:
Database Password [2nO4qNNd]:
Database Prefix [wp_]:webinoly_
安裝 Lets Encrypt SSL 加密證書
sudo site example.com -ssl-on
Please, enter an email to register your new certificate: //輸入你的 mail 信箱
你的域名和 www 子域名有正確指向此服務器,等一下就會出現申請成功,如下:
MAILTO=hello@yungke.me
15 3 * * 7 letsencrypt renew
SSL have been successfully enabled for site example.com!
2018/03/28 補充:
2018/03/01 之後安裝的 1.3.1 版,已經修正安裝 SSL 證書後,自動 HTTP 導向 HTTPS 的問題,可以忽略下面修改 example.com conf 文件。
因為安裝了 SSL 證書,Webinoly 的 Nginx conf 配置文件只有 443 port,這時你用域名開網頁會出現 LNMP 預設網頁,如圖:

需要修改 conf 配置,你才能安裝 WordPress 網站。
打開 /etc/nginx/sites-available/example.com 文件,配置如下。加入 listen 80 及 http 301 轉向 https 這兩個配置:
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com www.example.com;
# WebinolySSLstart
ssl on;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
# WebinolySSLend
access_log /var/log/nginx/example.com.access.log we_log;
error_log /var/log/nginx/example.com.error.log;
root /var/www/example.com/htdocs;
if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
index index.php index.html index.htm;
...............
以下省略
存檔文件,重啟 Nginx
nginx -t && service nginx restart
這樣你就可以開始安裝 WordPress。
使用 phpMyadmin 資料庫管理,請在網頁輸入 http:// 你的 IP:22222/pma
結語
Webinoly 在很短的時間就能安裝完成一個 LNMP Lunix 系統,自動配置和優化你的 VPS 服務器,使用及維護都不會太難。
如有其他安裝或使用問題,歡迎回覆討論。
2017/12/17 補充:
感謝網友提醒我關於 HTTP Authentication (網頁身分認證) 的問題,如果是購物網站,網頁認證會造成會員的不便,無法登入。
Webinoly 有關閉的指令,執行後會關閉網頁認證:
sudo httpauth -wp-admin-off
不過,這會關閉全部的網站認證,可以針對單一個購物網站關閉網頁認證,修改 wpcommon.conf 文件:
複製 wpcommon.conf 文件,改名為 wpcommon-nohttp.conf
cd /etc/nginx/common
cp -i wpcommon.conf wpcommon-nohttp.conf
修改 wpcommon-nohttp.conf,將 include common/acl.conf 註釋掉,如下:
# WordPress COMMON SETTINGS
# DO NOT MODIFY, ALL CHANGES LOST AFTER UPDATE Webinoly
# Limit access to avoid brute force attack
location = /wp-login.php {
limit_req zone=one burst=1 nodelay;
# include common/acl.conf;
include fastcgi_params;
fastcgi_pass php;
}
...............
修改該網站的 conf 文件,位置在 /etc/nginx/sites-available/example.com,註釋掉 wpcommon.conf,新增我們修改好的 wpcommon-nohttp.conf 文件,如下
...............
include common/php.conf;
# include common/wpcommon.conf;
include common/wpcommon-nohttp.conf;
include common/locations.conf;
include common/headers-http.conf;
include common/headers-html.conf;
...............
存檔後,重啟 Nginx 後,這個網站就不會有網頁認證的問題。
Webinoly 安裝 VPS 教學系列文章
1. Webinoly 快速安裝 WordPress 教學
Webinoly 快速安裝 WordPress 教學

2. Webinoly 安裝後如何更改 PHP 版本
Webinoly 安裝後如何更改 PHP 版本

3. FastCGI Cache 快取 WooCommerce 的問題
FastCGI Cache 快取 WooCommerce 的問題

4. Webinoly 的 Zend Opcache 性能優化
Webinoly 的 Zend Opcache 性能優化

5. Webinoly 的 Memcached 性能優化
Webinoly 的 Memcached 性能優化

6. 阻擋 MJ12bot 惡意蜘蛛訪問
阻擋 MJ12bot 惡意蜘蛛訪問

7. Webinoly 安裝 VPS 教學
8. Webinoly 安裝 VPS 教學 – 進階版
Webinoly 安裝 VPS 教學 – 進階版

Featured Photo by SpaceX on Unsplash
SSL 似乎不會自動更新續約,請問要如何加上呢?
Webinoly 在你安裝 sudo site domain.com -ssl-on 成功後,就會自動幫你安裝續約排程,不用再另外安裝了。
用 crontab -l 指令檢查你的 cron 排程。
應該會看到:
MAILTO=rupm66@gmail.com
15 3 * * 7 letsencrypt renew
好的,謝謝回覆。
感謝您這篇教學,我依照步驟設定,直到這裡卡住,請您教我。
打開 /etc/nginx/sites-available/example.com 文件
“打開”的指令是什麼?
“存檔文件”的指令是什麼?
如果你是新安裝 Webinoly 1.3.1 版本,
可以忽略這個部分。
Webinoly 1.3.1 在你安裝了 SSL 證書時,會自動將 80 端口及 HTTP 301 to HTTPS,不用再自行修改 conf 文件了。
謝謝您!XD
請問 Webinoly 1.3.1 可以用 Cloudflare DNS ?
可以使用 CloudFlare CDN,建議不要打開雲,SSL 證書好像會有問題。
Webinoly 是延續 EasyEngine 的架構,所以可以參考這一篇的說明:https://easyengine.io/tutorials/cdn/
Yungke大,我發現我照您的方法用了之後,ie8會顯示「Internet Explorer 無法顯示網頁」,舊手機會顯示「無法建立安全連線」,您的這個網站也是有一樣的問題,這個有解嗎?
我沒看懂您的意思?
是在 IE8 瀏覽器下無法開啟網站嗎 (yungke.me)?
我手上的 IE 已經是 11 了,找不到 IE8 來測試了。
對的,完全無法開啟網站喔,我用了2台電腦的ie8,一樣問題,還有舊手機也是
應該是VPS安裝Webinoly裡面有東西檔到了,之前用虛擬主機時,沒有這個問題
IE8 是 XP 時代的產物 XD….
Webinoly 的安裝要用一個乾淨的 VPS 才行,意思是說,Linux 不能先預裝 Apache。
安裝前,用這個指令檢查:
rpm -qa | grep httpd
移除 Apache
sudo service apache2 stop
sudo apt-get purge apache2 apache2-utils apache2.2-bin apache2-common
sudo apt-get autoremove
感謝版大分享。對於SSL有一點疑問想請教
sudo site example.com -ssl-on
如果今天網域為abc.com
要以子網域做多國語言 如en.abc.com zh-han.abc.com
是否不能在這個步驟就開啟 -ssl-on 呢?
以子網域做多國語言,這方面我沒做過。
但是,WP Multi-Lingual 說明文件來看,
abc.com 根域名要使用「通配符」 (泛域名) SSL 證書,
sudo site abc.com -ssl=on -wildcard
en.abc.com 及 zh-han.abc.com 這兩個子域名,DNS A 紀錄也要指向與 abc.com 同 IP。
我有一些問題請教
我使用Google Cloud遇到問題
sudo IP -wp 這裡我輸入Google Cloud虛擬主機的IP wordpress可以正常顯示
但是無法使用進入到端口22222 工具網頁
開啟SFTP 輸入 sudo webinoly -login-www-data
顯示這個錯誤
[ERROR] Invalid value for login-www-data!
GCP VM 主機比較特別一點….
先到 GCP 控制台將 VPC 網路 >> 防火牆規則
將 22222/TCP 和 11371/TCP 端口打開
謝謝幫忙
Webinoly 1.9.0 版後,修改了很多指令,抱歉,我這篇文章有的沒更正。
還是以 Webinoly 說明文件為準,請詳見>>
https://webinoly.com/en/documentation/webinolys/
開啟 SFTP 功能:
sudo webinoly -login-www-data=on
Thank you, I’ve recently been searching for
info about this topic for a long time and yours is the best I’ve discovered so far.
But, what about the bottom line? Are you sure concerning the supply?