第一篇文章就來寫這個主題吧,但也因為這樣被搞到超累
本文就是個紀錄架設過程,所以很多理論就skip,還會小抱怨遇到的神奇問題哈
註冊網域
- Godaddy
.com
的網域大概落在150-300吧 - Freenom
結果居然可以註冊免費網域,只是後綴被限定
最後我選hunglinchen.ga
哦哦如果開輸入欄位只有輸入hunglinchen
的話,會跳出可用的網域
但是點選時會跳出不可用
但輸入完整的網域(hunglinchen.ga)就可以加到購物車嚕
進到DNS管理的頁面,先放著租好主機再回來
Services > My Domains > Manage Domain > Manage Freenom DNS
租用伺服器主機
伺服器主機商選google,有個平台叫Google cloud platform (GCP)
首次註冊可以一年內有300美金使用,對於自己租用一台空機的價錢綽綽有餘
選Compute Engine
建立一台虛擬主機
再來操做就看以下連結,人家寫得很完美XD
主機規格我選CPU 一核心,記憶體 3.75G ,硬碟30G SSD,作業系統選ubuntu 18.04
伺服器位置就選彰化那個機房,這樣一個月30幾塊而已(台幣)
當然以上規格只是我熟悉和喜歡的而已,可以自己客製化方案
哦哦還有把ip調為靜態ip,一開始是是臨時ip
遠端操作
Cloud SDK
要能夠遠端操作伺服器最常見的服務就是ssh
了
google這方面功能也做好了,下載他們的Cloud SDK,選自己電腦的作業系統,我手邊用windows
Cloud SDK 是一組指令列工具,用於在 Google Cloud 中進行開發作業。您可以使用這些工具,直接透過指令列存取 Compute Engine、Cloud Storage、BigQuery 和其他 Google Cloud 服務。
執行安裝檔後會跳出認證畫面,認證完自己的google帳號後就可以用ssh連接主機
gcloud compute --project "專案的ID" ssh --zone "伺服器主機位置" "主機名稱"
專案ID是GCP一開始要建立專案時的ID,名稱預設應該是My First Project
主機位置是剛剛租用哪個地區的主機,下圖區域
的色塊
主機名稱就是建立… 應該不用說了….
沒意外就可以順利連上了,有意外的話我也不知道怎辦XD
第一次是誤以為主機位置是ip所以失敗
這時就會跳出眼熟的terminal畫面了
在伺服器建立使用者以ssh連接
sudo adduser [username]
sudo usermod -a -G sudo [username]
sudo su hunglin
sudo passwd
exit
退回本機電腦的遠端拿公開金鑰
ssh-keygen -t rsa -f ~/.ssh/mainsite.pem -C [username]
chmod 400 ~/.ssh/mainsite.pem
cat ~/.ssh/mainsite.pem.pub
到GCP > Compute engine > 中繼資料 > 安全殼層金鑰
複製到compute engine的中繼資料後就可以用username
登入了
架設Wordpress網站
以上其實都在租用伺服器的連結都有詳細說明,我都是看著他一路過來XD
接下來則是要在伺服器安裝LAMP最後才是WordPress
阿忘記Freenom的DNS了
這時候可以回到Freenom DNS管理頁面在Target貼上伺服器的公開IP
Name則是網域名稱
Save Change之後等段時間應該就可以在瀏覽器輸入網域進到自己的網站了
不過現在還沒架設
Apache2
sudo apt update
sudo apt upgrade -y
sudo apt install apache2 apache2-utils -y
sudo systemctl status apache2 #確認運行
啟用服務
sudo systemctl enable apache2
sudo systemctl start apache2
如果Domain指向伺服器成功的話在瀏覽器輸入domain name就會看到apache的預設頁面
看到會感動一下
PHP
我遇到的痛苦不想說了,簡單說就是要安裝最新版的php喔~
現在(2020-06)穩定運行版是7.4
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.4
sudo apt install php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip php-json
WordPress官方也有建議要安裝那些php的extensions,最好是看一下官網說要安裝那些
我覺得我上面可能有漏寫: )
https://make.wordpress.org/hosting/handbook/handbook/server-environment/#php-extensions
Mysql
sudo apt install mysql-server mysql-client libmysqlclient-dev -y
sudo netstat -tap | grep mysql
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
# annotate bind-address = 127.0.0.1
sudo vim /etc/mysql/debian.cnf
紀錄一下預設的帳號和密碼
帳號沒意外是debian-sys-maint
建立給Wordpress的資料庫
進入mysql服務
mysql -u debian-sys-maint -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.29-0ubuntu0.18.04.1 (Ubuntu)
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
授權其他電腦登入
mysql> CREATE DATABASE [自己命名一個資料庫];
mysql> GRANT ALL PRIVILEGES ON [databasename].* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'PASSWORD_input';
mysql> FLUSH PRIVILEGES;
mysql> EXIT;
重啟服務
sudo systemctl restart mysql.service
WordPress
終於…
下載wordpress再移動到網頁伺服器顯示位置
wget -c http://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
sudo rsync -av wordpress/* /var/www/html/
把擁有者權限給apache
sudo chown -R www-data:www-data /var/www/html/
sudo chmod -R 755 /var/www/html/
編輯設定檔
sudo mv wp-config-sample.php wp-config.php
sudo vim wp-config.php
填入mysql的設定
// ** MySQL 設定 - 您可以從主機服務提供商獲取相關資訊。 ** //
/** WordPress 的資料庫名稱,請更改 "database_name_here" */
define('DB_NAME', 'database name');
/** MySQL 資料庫使用者名稱,請更改 "debian-sys-maint" */
define('DB_USER', '');
/** MySQL 資料庫密碼,請更改 "password_here" */
define('DB_PASSWORD', 'PASSWARD_INPUT');
最後最後
sudo systemctl restart apache2.service
sudo systemctl restart mysql.service
然後在瀏覽器輸入網域名就可以進到wordpress的設定介面了
How to Install WordPress 5 On Ubuntu 16.10/16.04 Using LAMP Stack
沒想到這樣整理下來也是很累= =
之後再更新遇到奇葩的問題