fbpx
Home 建站教學 花1小時就建好 WordPress 的 Nginx 教學

花1小時就建好 WordPress 的 Nginx 教學

by Glass Chan
2 comments

網站搭建 這件事,繼上次給大家科普了用VPS去搭建翻牆利器後,其實應該會有人想,買了一個VPS,然後只搭一個SS機場,不是很浪費嗎?是的,我也這麼覺得。你們現在所看到的這個網站,其實跟我的SS機場是共存在同一個VPS上的。是不是很屌?!來!崇拜我吧!!!所以今天,我就以一個可能只比小白強那麼一點點的角度,來寫這個 網站搭建 教程,希望可以用最簡單的方法,去使想自己建站的童鞋,輕鬆的完成這樣一個以前我也覺得無比艱巨的任務。事不宜遲,馬上開始!

前言

以前我建站,因為什麼都不會嘛,就只會通過 cPanel 或在自己主機安裝傳統的 LAMP (Linux, Apache, MySQL / MariaDB, PHP)。但做了很多的資料搜集後 seafoodholdhand.com 決定使用 Centmin Mod,它有幾個優點,首先會搭建 LEMP (Linux, NGINX, MySQL / MariaDB, PHP),然後自化優化安裝並保護服務器 (自帶 CSF 防火牆)。最重要的是即使在配置很低的服務器上,也運作順暢,而且速度非常快!

在本文中,我將詳細介紹如何使用 Centmin ModVultr VPS 服務器上安裝 WordPress+WooCommerce。利用 Let’s Encrypt 獲得免費SSL證書,所有網站都應該使用HTTPS。最後用 CloudFlare 提供免費的 CDN 網絡,DDoS 和其他安全保護。

Note: 我推薦使用 Vultr VPS 和 Digital Ocean,當然你仍可以選用, BangwagonHost, Linode 或者其他的供應商都可以的,其實大同小異的。

Nginx 教學事前準備

  1. 安裝了 CentOS 7 的服務器,我將 Vultr VPS 作為示範。
  2. VPS 建議擁有1GB RAM 。如果之後需的話,可以添加額外的交換空間( swap 分區)。
  3. SSH 客戶端,Windows 的用 Xshell ,macOS 的用內置的 Terminal ,Android 的用 Termius 。
  4. 一顆能折騰的心。

禁用 SELinux

建議臨時禁用 SELinux ,登入VPS,通過以下命令來完成操作:

setenforce 0

花1小時就建好 WordPress 的 Nginx 教學 2

更新 CentOS 服務器

更新你的服務器,你應該經常這樣做。通過以下命令來完成操作:

yum update

花1小時就建好 WordPress 的 Nginx 教學 3

看到這個畫面,按「Y」就可以了。

安裝 CentminMod LNMP

通過以下命令來完成操作:

curl -O https://centminmod.com/betainstaller.sh && chmod 0700 betainstaller.sh && bash betainstaller.sh

花1小時就建好 WordPress 的 Nginx 教學 4

安裝大約需要40分鐘,完成之後,你會夠得到一些關於安裝的總結信息。

所以現在我們可以利用這些時間,先完成下面的東西 (相信我,看著它也不會快一點的)。

注冊你的 .com 域名

這個就是我們平常用的 .com .net .org 域名,這就像一家實體店的地址。沒有這個地址可以嗎?當然可以啦!把服務器的 IP 給記下來,111.111.111.111 就是我網址了……嗯,并沒什麼卵用。我還是買個域名好了? 這裡我會用 Namecheap 做示範,因為他們的性價比比較高,經常會有很便宜的域名,而且售後服務很好。

買了域名後,可以進行下一步。

注冊 Cloudflare CDN

非常出名的 CDN ,什麼是 CDN?自己去搜一下吧,因為我也不是很懂,反正能幫網站加速就是了。我掛了這個,用國內的 4G 網絡不掛 SS 都可以很快的連到 seafoodholdhand 去。

  1. 到 Cloudflare 去免費注冊一個
    花1小時就建好 WordPress 的 Nginx 教學 5
    花1小時就建好 WordPress 的 Nginx 教學 6
    花1小時就建好 WordPress 的 Nginx 教學 7
    花1小時就建好 WordPress 的 Nginx 教學 8
  2. 不停的「NEXT」或「Continue」至看到這個畫面,我們要回到 NameCheap 的域名控制板面更改 nameservers。
    花1小時就建好 WordPress 的 Nginx 教學 9
  3. 點選 Custom DNS,再把剛拿到的「maria.ns.cloudflare.com」和「pete.ns.cloudflare.com」換進去 (你們可能的會不一樣),然後點右邊綠色的「√」就好了。
    花1小時就建好 WordPress 的 Nginx 教學 10
    花1小時就建好 WordPress 的 Nginx 教學 11
  4. 回到 Cloudflare 的「DNS」把這四個加上去。
    花1小時就建好 WordPress 的 Nginx 教學 12

      • A > 你的域名.com > VPS的IPv4 > Add Record
      • A > www > VPS的IPv4 > Add Record
      • AAAA > 你的域名.com > VPS的IPv6 > Add Record (可選)
      • AAAA > www > VPS的IPv6 > Add Record (可選)
  5. 最後就是點「Cypto」將 SSL 換成「Flexible」
    花1小時就建好 WordPress 的 Nginx 教學 13

網站搭建 安裝 WordPress 和 Let’s Encrypt 的免費 SSL 證書

  1. 切回 SSH 客戶端,正常它已經斷連了。重新登入,應該會看到下面的畫面 (如果沒有的話,很有可能是 Centmin Mod還在裝)
    花1小時就建好 WordPress 的 Nginx 教學 14
  2. 先輸入這兩行,開啟 Let’s Encrypt 的使用功能。
    touch /etc/centminmod/custom_config.inc
    echo "LETSENCRYPT_DETECT='y'" >> /etc/centminmod/custom_config.inc

    花1小時就建好 WordPress 的 Nginx 教學 15

  3. 輸入後,它什麼都沒有顯示是正常的。那我們就可以開始安裝 WordPress 了,輸入
    cd /usr/local/src/centminmod
    ./centmin.sh
  4. 等大約30秒,會出現這個畫面
    花1小時就建好 WordPress 的 Nginx 教學 16
  5. 輸入「22」的 Add WordPress Nginx vhost + Cache Plugin
    按下面的去問題作答,不懂是什麼的話,跟我一樣的就可以了。但記得要改裡面的資料!

    Do you want to continue with Nginx vhost site creation? [y/n] Y
    //你想繼續Nginx的虛擬主機網站創建?
    Enter vhost domain name you want to add (without www. prefix): youdomain.com
    //輸入您想要添加的虛擬主機域名(不含www前綴)
    Create a self-signed SSL certificate Nginx vhost? [y/n]: Y
    //創建一個自簽名的SSL證書?
    Get Letsencrypt SSL certificate Nginx vhost? [y/n]: Y
    //獲取Letsencrypt SSL證書?
    You have 4 options: 
    1. issue staging test cert with HTTP + HTTPS (untrusted)
    2. issue staging test cert with HTTPS default (untrusted)
    3. issue live cert with HTTP + HTTPS (trusted)
    4. issue live cert with HTTPS default (trusted)
    Enter option number 1-4: 4
    //輸入選項編號1-4:輸入"4"
    Theme Setup: 
    Install CyberChimps Responsive Theme (cyberchimps.com/responsive-theme/) [y/n]: N
    //安裝Cyber​​Chimps Responsive 主題
    
    Wordpress Setup: 
    Set custom WP Admin Display Name ? [y/n]: N
    //設置自定義WP Admin顯示名稱?
    Install WordPress in subdirectory /blog ? [y/n]: N
    //安裝WordPress的子目錄/博客?
    Disable Auto Generated WP Admin Username / Password ? [y/n]: Y
    //禁用自動生成的WP Admin用戶名/密碼? 
    Disable wp-login.php password protection ? (less security) [y/n]: Y
    //禁用wp-login.php密碼保護?建議不要開啟,十級麻煩!
    
    Enter desired WP Admin Username: username
    //輸入所需的WP管理員用戶名:
    Enter desired WP Admin Password: password
    //輸入所需的WP管理員密碼:
    Enter email address for Admin User for WordPress Installation: [email protected]
    //輸入管理員用戶的Wordpress安裝電子郵件地址:
    
    1). KeyCDN Cache Enabler (default & recommended)
    2). Redis Nginx Level Caching (may have issues with some wp plugins)
    3). WordPress Super Cache
    --------------------------------------------------------
    Enter option [ 1 - 3 ] 3
    //Wordpress的緩存插件,我會選3,之後可以換的。
    
    Enter email address for WordPress Installation: [email protected]
    //輸入Wordpress安裝的電子郵件地址:
    
    Create FTP username for vhost domain (enter username): username
    //創建FTP用戶名:
    Do you want to auto generate FTP password (recommended) [y/n]: Y
    //你想自動生成FTP密碼(推薦)
    
    acmetool.sh is in beta testing phase
    please read & provide bug reports &
    feedback for this tool via the forums
    https://centminmod.com/acmetool
    
    continue [y/n] ? Y
    //輸入"Y"
  6. 之後又會看到這個畫面
    花1小時就建好 WordPress 的 Nginx 教學 16
  7. 往上翻,會看到剛建立vhost的資料:
    -------------------------------------------------------------
    FTP hostname : 111.111.111.111
    FTP port : 21
    FTP mode : FTP (explicit SSL)
    FTP Passive (PASV) : ensure is checked/enabled
    FTP username created for yourdomain.com : ftpac
    FTP password created for yourdomain.com : zZCGvrm3c3DspGh04ZOHz
    -------------------------------------------------------------
    vhost for yourdomain.com created successfully
    
    
    vhost ssl for yourdomain.com created successfully
    
    domain: https://yourdomain.com
    vhost ssl conf file for yourdomain.com created: /usr/local/nginx/conf/conf.d/yourdomain.com.ssl.conf
    /usr/local/nginx/conf/ssl_include.conf created
    Self-signed SSL Certificate: /usr/local/nginx/conf/ssl/yourdomain.com/yourdomain.com.crt
    SSL Private Key: /usr/local/nginx/conf/ssl/yourdomain.com/yourdomain.com.key
    SSL CSR File: /usr/local/nginx/conf/ssl/yourdomain.com/yourdomain.com.csr
    Backup SSL Private Key: /usr/local/nginx/conf/ssl/yourdomain.com/yourdomain.com-backup.key
    Backup SSL CSR File: /usr/local/nginx/conf/ssl/yourdomain.com/yourdomain.com-backup.csr
    
    upload files to /home/nginx/domains/yourdomain.com/public
    vhost log files directory is /home/nginx/domains/yourdomain.com/log
    
    ------------------------------------------------------------
    SSH commands to uninstall created WordPress install and Nginx vhost:
      /root/tools/wp_uninstall_yourdomain.com.sh
    ------------------------------------------------------------
    
    ------------------------------------------------------------
    Wordpress Auto Updater created at:
      /root/tools/wp_updater_yourdomain.com.sh
    cronjob set for every 8 hours update (3x times per day)
    ------------------------------------------------------------
    
    Wordpress domain: yourdomain.com
    Wordpress DB Name: wp1976529922db_30874
    Wordpress DB User: wpdb30874u11711
    Wordpress DB Pass: wpdbAUSpRCGk0c5Cduffp23604
    Wordpress Admin User ID: 294291
    Wordpress Admin User: username
    Wordpress Admin Pass: password
    Wordpress Admin Email: [email protected]
    Restarting nginx (via systemctl):  [  OK  ]

    將它們抄到安全的地方,以後有可能需要用到的。

  8. 輸入「24」離開 Centmin Mod

最後的設定

  1. 回到 CloudFlare
  2. 點「Cypto」將 SSL 換成「Full」
    花1小時就建好 WordPress 的 Nginx 教學 18
  3. 點「Page Rules」創建三個規則
    花1小時就建好 WordPress 的 Nginx 教學 19
    花1小時就建好 WordPress 的 Nginx 教學 20花1小時就建好 WordPress 的 Nginx 教學 21
  4. 最後,登入 WordPress 後台「https://yourdomain.com/wp-admin/」安裝及設置 CloudFlare WordPress plugin 和 WooCommerce。完成!!

相關文章

  • ayu表示:

    嗨~在最後《最後的設定》第二步驟說明是不是筆誤?應該是《點「Cypto」將 SSL 換成「Full」》這樣才對嗎?

  • 我們使用 Cookie 改善網站體驗。 繼續使用我們的網站即表示您同意我們的 Cookie 政策。 同意 隱私政策

    >