自己架的站前幾天不小心弄掛掉了,所以就快速用新版的Ubuntu 20.04
重新把wordpress5.5安裝回來,還好在掛掉前有使用 All-in-One WP Migration(下載)
把文章跟資料庫都備分了起來,檔案不大大概是250MB左右
不過還沒有正式用過,剛好這次站突然掛掉了,看看我能夠多快復原這個站
基本上就是把,把電腦的ubuntu安裝好→LAMP Apache, MySQL, PHP安裝好→把PHP空間調整好放入wordpess5.5→安裝外掛All-in-One WP Migration→然後還原網站
其實ubuntu架起來的站真的是很穩定了,一整年完全沒有當過機
通常都是我自己搞壞掉的,不過在很需要這個站的時候突然掛了就有點心慌
興起了想要付費使用網路空間的念頭,所以我參考了很多網站帶路姬的訊息
就算是選擇再基本的空間方案,基本上每年3000元左右還是跑不掉
而且這個費用是繳三年,才有的優惠價格
每多一個設定像是自動備份等等,都要加一些錢
這些東西如果是自架站的話,要解決都不困難
想說算了,反正努力寫寫看看這些東西也只是我的嘗試
還是快速地靠自己的能力把站架回來吧
一方面也可以看看All-in-One WP Migration復原的程度有多高
以下是我安裝復原的的簡流細節:
[the_ad id=”1586″]
- 下載最新的ubuntu,把ubuntu20.04 安裝在電腦
- 打開終端機,開始鍵入下列指令:
sudo apt update
sudo apt upgrade
sudo apt install apache2
sudo ufw app list
sudo ufw allow ‘Apache Full’
sudo ufw status
sudo systemctl status apache2 (完成apache2) - apache2)
- 開始安裝mysql,使用下面的指令
sudo apt install mysql-server
sudo service mysql status
sudo mysql_secure_installation
(大部分都要選y,每一次在設定這個安全協定是都讓我頭很大
安全的等級分成0,1,2,如果到達2級,會需要8個字母以上,要有大小寫且會需要特殊字元
即使設定好了,後面安裝wordpress還是會有資料庫的建立與設定問題) - 安裝PHP,使用以下的指令
sudo apt install php libapache2-mod-php php7.4-mysql php7.4-common php7.4-mysql php7.4-xml php7.4-xmlrpc php7.4-curl php7.4-gd php7.4-imagick php7.4-cli php7.4-dev php7.4-imap php7.4-mbstring php7.4-opcache php7.4-soap php7.4-zip php7.4-intl -y
php -v
調整PHP的一些上傳檔案的設定(這個很重要)
sudo nano /etc/php/7.4/apache2/php.ini
按F6,針對這份文件做調整
upload_max_filesize = 128M
post_max_size = 128M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000
基本上上面這些數值都需要調整,然後按F2把檔案儲存退出,CTRL+X - 調整apache2 的設定,首先先打開讀寫權限
sudo a2dissite 000-default
sudo mkdir -p /var/www/html/domainname/public
sudo chmod -R 755 /var/www/html/domainname
sudo chown -R www-data:www-data /var/www/html/domainname
sudo nano /etc/apache2/sites-available/domainname.conf (這是網站空間最重要的設定)
設定內容是<VirtualHost *:80>
ServerAdmin admin@domainname.com
ServerName domainname.com
ServerAlias www.domainname.comDocumentRoot /var/www/html/domainname/public
<Directory /var/www/html/domainname/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost> - 讓apache2啟動新設定
sudo a2ensite domainname.conf
到這裡原本應該有一個檢查apache2的檢查設定的
conf檔只要有正常啟動,整個php網路空間就可以運作正常
到這我就可以用購買的網域,或127.0.0.1 測試我的網路空間正不正常
有沒有正確指到網頁空間的預設路徑 - 給網頁空間SSL的認證
sudo apt install python3-certbot-apache
sudo certbot –apache –agree-tos –redirect -m youremail@email.com -d domainname.com -d www.domainname.com
延長它每90天更新的認證
sudo certbot renew –dry-run - 寫一個INFO.php測試網站
sudo nano /var/www/html/domainname/public/info.php
把這個放在文件中後存檔
<?php phpinfo();
接下來就可以去網站檢查php是否有正常運作 domainname.com/info.php
※ubuntu架站參考資料: How to Install LAMP Apache, MySQL, PHP in Ubuntu 20.04
這次全部按造這個步驟進的非常順利,過程大概只花半小時
比較困難的是conf檔調整,要確定好用哪個資料夾當作對外空間
[the_ad_placement id=”%e5%85%a7%e5%ae%b9″]這樣就可以好好安裝wordpress5.5了嗎?
並沒有
還要先解決mysql的登入與資料庫的問題
我常常按照上面的基本流程安裝後,還是會有無法登入的問題
原因是沒有設定好database,與可以正常登入的帳號/密碼
一開始在設定mysql的強度是非常嚴格的,必須要注意字數大寫跟特殊符號才能順利登入 - 能夠順利登入mysql以後,必須要設定一個給wordpress用的資料庫,使用者帳號和密碼
鍵入:
mysql -u root -p
Enter password: (如果無法順利登入需要參考一下這篇【ubuntu mysql無法登入密碼重設】
但其實我後來理解到,根本問題是一開始建立ROOT密碼等級跟大小寫特殊字元8碼以上的問題
可以登入以後,就開始來建立DATABASE跟使用者名稱,帳號密碼
mysql> CREATE DATABASE ‘newdatabase‘;
mysql> CREATE USER ‘newuser‘@’localhost’ IDENTIFIED BY ‘newpassword‘;
mysql> GRANT ALL PRIVILEGES ON newdatabase.* TO ‘newuser‘@’localhost’;
mysql> FLUSH PRIVILEGES;
mysql> quit
測試剛剛新建的使用者/密碼是否可以登入
# mysql -u newuser -p
可以登入的話,資料庫的設定就沒問題了
終於可以安裝wordpress了 - wordpress網站https://tw.wordpress.org/download/releases/
下載最新安裝檔ZIP,將之解壓縮放在tmp的目錄中
打開終端機,鍵入
●sudo cp -a /tmp/wordpress/. /var/www/根目錄/wordpress
●sudo chown -R www-data:www-data /var/www/根目錄/wordpress
●sudo find /var/www/html/cclfun/public/ -type d -exec chmod 750 {} \;
●sudo find /var/www/html/cclfun/public/ -type f -exec chmod 640 {} \;
●大功告成,可以去你網頁用domain或子網域開啟網站,正式安裝wordpress
- 剛剛設定mysql的database,帳號密碼馬上就派上用場了,一個新的wordpress很快就啟用了
但是我這次復原的重點是放在All-in-One WP Migration 是否真的能夠復原我的網站
所以我急急忙忙的先去外掛把這個程式安裝起來了
接著選取我事先配分好的檔案,大小大概有250MB左右
(因為是自己架的站,軟體的上傳大小限制,在上面PHP的調整是完全有顧慮到這個問題)
緊接著花個大概3-5分鐘,我的站就完全還原回來了
完全不用去管任何設定,或是一些外掛細微的調整
資料庫部分也不用顧,它都有完全對應到新架站的細節
大成功,真的大成功,讚 - 除了網站的還原成功外,我也很快的利用再生龍把整顆硬碟,硬碟對硬碟的對拷了三份
這樣就再也不怕網站突然掛掉了,不管是從架站面,或是網站面,都有還算完善的備份措施
這些東西搞下來,大概花了一天左右的時間
好吧打算這樣再撐一陣子好了
看來是不必要浪費那個錢去每年買空間
以此作為記錄