--- tags: 1101, lsa --- - Book mode https://hackmd.io/@ncnu-opensource/book # Wordpress 教學 ## Wordpress 簡介 - 是一個 CMS (Content Management System) 內容管理系統 :::info **CMS 內容管理系統** - 網站後台 - 從網站特定網址登入帳密後可以管理網站內容 - 不需要懂網頁設計,不需要懂程式 - Wordpress、Joomla、Drupal ::: - 可以幫你快速的架起網站 - 有相當多的佈景主題、附加外掛等免費資源可供下載運用。 - 繁體中文化程度已經達到百分之百 - 針對 WordPress 所寫的教學文章相當多樣性而豐富 - 完整的SEO操作系統 :::info **SEO 搜尋引擎最佳化** - 一種透過自然排序(無付費)的方式增加網頁能見度的行銷規律 - 包含技術與創意,用以提高網頁排名、流量,以及增加網頁在搜尋引擎的曝光度 ::: ## 裸機安裝 Wordpress :::info [ Optional ] 如果 Ubuntu 版本低於 20.04 的話需加入 php 的 PPA - Ubuntu 20.04 的 php 版本預設為 7.4,所以**不用裝** - add-apt-repository 將 PPA 添加來源列表中,以便 Ubuntu 知道從該 PPA 以及官方 Ubuntu 源中查找更新。 ```shell= sudo add-apt-repository ppa:ondrej/php ```  ::: 1. 安裝所需套件 ```shell= sudo apt install mariadb-server php7.4-fpm php7.4-mysql ``` 1. mariadb-server - 與 MySQL 相容的開源分支,由 MySQL 作者所創立與維護 2. php7.4-fpm - 接收由 nginx 轉發的 client request - 解析並執行 php - 回傳執行結果給 nginx 再轉發給 client 3. php7.4-mysql - 讓 php 連接 mysql 的套件 2. 安裝 wordpress - 進入 Wordpress 官網,下載最新版本 ```shell= wget https://tw.wordpress.org/latest-zh_TW.tar.gz ``` - 解壓縮 ```shell= tar -xvf wordpress-5.5.1-zh_TW.tar.gz tar -xvf latest-zh_TW.tar.gz ``` :::info **有套件可以直接安裝** - 優點 - 有重大的安全更新時,Ubuntu 會自動幫你更新 - 如果是分開下載,針對功能的更新,需要進系統相對應的目錄更改權限 - 很多站的時候,需要一個一個去更新 - 缺點 - 與主系統比較難分開 ::: 4. 將 wordpress 移到 /var/www/vhost/wordpress 下 - 先在 /var/www 底下建立 vhost 資料夾 ```shell= mkdir vhost ``` - 因為不確定以後會不會還有其他的服務網站,eg. Joomla ```shell= sudo mv wordpress /var/www/vhost/wordpress ``` 5. 建立一個 Database 供 Wordpress 使用,及一個 DB 使用者 > FIXME: 講清楚 - 使用 root 帳號連進 mysql - 因為目前只有 root 有讀寫資料庫的權限 ```shell= sudo mysql -u root ``` - 建立 Wordpress 資料庫 ```shell= CREATE DATABASE wordpress; ``` - 建立一個能夠針對 Wordpress 資料庫操作的使用者 - `@localhost`:這個使用者只能由這台本機登入 ```sql= CREATE USER 'wordpress'@'localhost' IDENTIFIED BY 'wordpress_password'; ``` ::: danger 密碼要用安全的 ! 不要用這組 ! 要記得自己的密碼 ! ::: - 賦予這個使用者權限 ```sql= GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"localhost"; ``` - 刷新 mysql 的系統權限設定 ```sql= FLUSH PRIVILEGES; ``` :::info **一行完成建立使用者並給予權限** GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress_user"@"localhost" IDENTIFIED BY "wordpress_password_1234"; ::: - 資料庫設定完成,離開 ```sql= EXIT; ``` :::success 以上建立了一個資料庫供 wordpress 使用,也建立了一個可以使用這個資料庫的使用者 ::: 6. 建立 Virtual Host , 讓 nginx 可以去跑 Wordpress - 到 `/etc/nginx/sites-available` - 新增 config 檔 ```sql= sudo vim wordpress.conf ``` - 將以下內容貼近設定檔 ```conf= server { listen 80 ; listen [::]:80 ; root /var/www/vhost/wordpress; index index.php; server_name 學號.lsa.1101.org; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; } location ~ /\.ht { deny all; } } ``` 9. 將 sites-available 底下的 wordpress.conf soft link 到 site-enable 底下 ```shell= cd /etc/nginx/sites-enabled/ ``` ```shell= sudo ln -s ../sites-available/wordpress.conf wordpress.conf ``` 10. 設定 Server name 對應的 ip - 編輯 /etc/hosts ```shell= sudo vim /etc/hosts ``` - 加入這行:`127.0.0.1 學號.lsa.1101.org` 11. 重啟 nginx ```shell= sudo nginx -s reload ``` 12. 在 FireFox 連連看 學號.lsa.1101.org - 成功畫面  ## Wordpress 設定 1. 連線 mysql - 要跟 mysql 設定時的一樣  2. 在 /var/www/vhost/wordpress 底下新增 wp-config.php ```bash= sudo vim /var/www/vhost/wordpress/wp-config.php ``` - 依照網頁提示,貼上網頁上的內容  3. 輸入基本資料 - 帳號:pinping - 密碼:wordpress_pinping  4. 成功畫面  5. 後台介紹  6. 前台頁面介紹 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up