Server 觀念 & Joomla 安裝初體驗
如何學 Unix? http://linux.vbird.org/linux_basic/0110whatislinux.php 計算機概論與硬體知識 網路基礎知識 安裝與指令 作業系統的基礎技能 vi文書編輯器 Shell與Shell Script 軟體管理 (安裝 & 維護) 2019/7/20
進度 計算機概論與硬體知識 網路基礎知識 安裝與指令 作業系統的基礎技能 vi文書編輯器 Shell與Shell Script 軟體管理 (安裝 & 維護) 2019/7/20
傳統三層網站架構 3-tier Architecture 一些背景知識… 傳統三層網站架構 3-tier Architecture
3-tier Architecture 三層架構 上圖擷取自:http://blog.simcrest.com/what-is-3-tier-architecture-and-why-do-you-need-it/
名詞解釋 (硬體) 伺服器 (Server) 是啥? 任何提供多人存取、分享資訊者,皆可稱之。
但 … 徒“硬體”不足以自行 … 仍需在硬體上安裝作業系統 以及,提供某種特定服務之軟體 Windows, Unix, etc Web 伺服器 Database 伺服器 FTP 伺服器 SSH 伺服器 etc
名詞解釋 (軟體) 作業系統 (Operating System) Unix Windows etc Linux FreeBSD Ubuntu Desktop, Ubuntu Server FreeBSD FreeBSD, PC BSD Windows XP, 7, 8, 10 2008~201x Server etc
Ubuntu
Ubuntu Desktop or Server? X86 or AMD64?
名詞解釋 (軟體) 網頁伺服器 (Web Server) 資料庫管理系統 (Database Management System) Apache (Free) IIS (微軟) 資料庫管理系統 (Database Management System) MySQL (My-S-Q-L) SQL server
Apache
3-tier Architecture 三層架構 (軟體的角度) 大致對應 Users Users 程式+網頁 Joomla 資料庫 MySQL 上圖擷取自:http://blog.simcrest.com/what-is-3-tier-architecture-and-why-do-you-need-it/
3-tier Architecture 三層架構 (硬體&平台的角度) Windows + Browser Unix + Apache Unix + MySQL 上圖擷取自:http://blog.simcrest.com/what-is-3-tier-architecture-and-why-do-you-need-it/
3-tier Architecture 三層架構 (硬體&平台的角度) Windows + Browser Unix + Apache MySQL 上圖擷取自:http://blog.simcrest.com/what-is-3-tier-architecture-and-why-do-you-need-it/
3-tier Architecture 三層架構 (硬體&平台的角度) Windows + Browser 基本上,仍是三層架構,只是將應 用程式 (Joomla) 與資料庫 (MySQL) 放在同一個作業系統 (e.g., Unix) 平 台上。 Unix + Apache MySQL
架站? 硬體平台 作業系統 網頁伺服器 資料庫管理系統 幾千 (NAS) ~ 幾萬 (PC) ~ 幾十萬 (or 更多) Unix, Windows, or else 網頁伺服器 Apache, IIS, or else 資料庫管理系統 MySQL, SQL Server, or else NAS: Network Attached Storage
NAS (Synology) NAS
NAS (QNAP)
開始安裝 Joomla
Our 平台 硬體 (PC) 作業系統 網頁伺服器 + 應用程式 資料庫管理系統 CPU: Intel i7 Memory: 8 GB HD: 1 TB SSD / 2 TB HD 作業系統 Ubuntu 18.04.02 64-位元 Server 版 需帳號 / 密碼 網頁伺服器 + 應用程式 Apache 2.4.29 + Joomla 後者安裝好後需帳號 / 密碼管理 資料庫管理系統 MySQL 5.7.25 需帳號 / 密碼
下載最新版 Joomla
下載最新版 Joomla 最新版? 3.9.5 (midnight, 2019/4/29) https://downloads.joomla.org/ the newest version recommended for most new installs. It includes the latest and greatest features of Joomla and mobile/responsive /home2/Joomla_3.9.5-Stable-Full_Package.zip
上傳 Joomla 程式 至本課程 “作業系統平台” IP address: 120.107.152.9
連至課程作業系統 (Ubuntu 18.04.2 Server, 64-bit) SmarTTY Pietty $ mkdir www $ cd www $ cp /home2/Joomlaxxxx.zip . $ unzip Joomla_3.9.5-Stable-Full_Package.zip $ touch configuration.php $ chmod 666 configuration.php configuration.php 是 Joomla 的設定檔 Joomla安裝好後記得更改權限為 … $ chmod 644 configuration.php
資料庫設定 http://120.107.152.9/phpmyadmin/
登入 MySQL 資料庫 1. 輸入帳號 (root) & 密碼 (上課給) 2. 按“執行”
Bingo … MySQL 系統資料庫 (mysql) (與 MySQL 管理有關的設定 都在這裡面。)
複習:一點點基礎背景知識 … 啥是資料庫管理系統? 啥是資料庫? 啥又是資料表? phpMyAdmin 又是啥?
一個簡化的資料庫示意圖 phpMyAdmin 資料庫管理系統 MySQL 使用者 資料庫 mysql . . . tkwu-db etc-db 資料庫管理系統 MySQL 邏輯上的資料庫 實體的資料庫 (資料如何儲存在硬 碟之類的儲存體) phpMyAdmin 提供使用者 Web 介面 連接資料庫管理系統以 管理資料庫
啥是資料庫管理系統? 資料庫管理系統 (Database Management System:DBMS)為管理資料庫而設計的大型電腦軟體管理系統 具有代表性的資料管理系統有:Oracle、Microsoft SQL Server、MySQL 及PostgreSQL 等 通常資料庫管理員會使用資料庫管理系統來建立資料庫系統
MySQL 是資料庫管理系統 My S-Q-L
一個文字模式的資料庫使用例子 … MySQL的文字模式操作登入指令 選擇使用 mysql 資料庫
phpMyAdmin 是啥? phpMyAdmin 是一套連結 MySQL 資料庫管理系統的電腦程式,它提供比較 user-friendly 的 Web介面讓我們得以更方便地管理資料庫
phpMyAdmin 畫面
phpMyAdmin 畫面 資料庫 (系統)資料庫 資料庫 點一下 mysql 即相當於前面文字介面的 “use mysql” 指令
phpMyAdmin 畫面
啥是資料庫? 資料庫 (系統)資料庫 資料庫
注意大小寫喔 … MySQL 指的是資料庫管理系統 mysql 指的是資料庫
啥是資料表 (TABLE)? 我是資料庫 我是資料表
MySQL 系統資料庫 (mysql) 內容 資料表 (Table) columns_priv、db、event、func、general_log、help_category、help_keyword、help_relation、help_topic、host、ndb_binlog_index、plugin、proc、procs_priv、proxies_priv、servers、slow_log、tables_priv、time_zone、time_zone_leap_second、time_zone_name、time_zone_transition、time_zone_transition_type、user
啥是資料表?
(Back to)資料庫設定 http://120.107.152.9/phpmyadmin/
mysql 資料庫中與 Joomla 安裝有關的資料表 user 資料表 db 資料表
資料庫設定需做的事兒 新增一個 “資料庫”,以儲存您的 Joomla 網站資料 在 user 資料表中新增一位使用者帳號 (就是您的 Joomla 程式存取上述資料庫的帳號) 在 db 資料表中新增一筆資料,讓第二步驟新增的“使用者”能夠對第一步驟新增的“資料庫”為所欲為 (具有所有權限)
登入 MySQL 資料庫 (again) http://120.107.152.9/phpmyadmin/ 1. 輸入帳號 (root) & 密碼 (上課給) 2. 按 “執行”
Bingo … (again)
新增一個 “資料庫” 請統一用 s26_xxxxxxx (您學號之數字部分)
新增一個 “資料庫”
user 資料表中新增一位使用者帳號 Click
user 資料表中新增一位使用者帳號
user 資料表中新增一位使用者帳號 請務必記得您建的 username & Password (輸入你個人喜歡的帳號名稱) (輸入你的密碼) (按下拉選單選 PASSWORD) 請務必記得您建的 username & Password
In MySQL 5.7, password field has been changed to authentication_string
user 資料表中新增一位使用者帳號 有 warning no problem
user 資料表已新增 tkwu 帳號
Strict Mode in MySQL 5.7
Disable Strict Mode in MySQL 5.7
MySQL 5.7.X & up
MySQL 5.7.X & up
MySQL 5.7.X & up
MySQL 5.7.X & up
(回顧 … )Our 平台 硬體 (PC) 作業系統 網頁伺服器 + 應用程式 資料庫管理系統 CPU: Intel i7 Memory: 8 GB HD: 1 TB SSD / 2 TB HD 作業系統 Ubuntu 18.04.2 64-位元 Server 版 需帳號 / 密碼 網頁伺服器 + 應用程式 Apache 2.4.29 + Joomla 後者安裝好後需帳號 / 密碼管理 資料庫管理系統 MySQL 5.7.25 需帳號 / 密碼
在 db 資料表中新增一筆資料
在 db 資料表中新增一筆資料 這些您有 fu 嗎? 以下所有的 N 都改為 Y (這是啥意思?)
在 db 資料表中新增一筆資料 DONE
在 db 資料表中新增一筆資料
關於資料庫設定 … 我們做了哪些事? 甚麼意思?
重新載入權限 (這動作意思是?)
回顧一下,我們做了哪些事? 每個步驟又是甚麼意思? 關於 Joomla 安裝 … 回顧一下,我們做了哪些事? 每個步驟又是甚麼意思?
開始安裝囉 …
http://120.107.152.9/~tkwu tkwu 是啥?
(回顧 … )Our 平台 硬體 (PC) 作業系統 網頁伺服器 + 應用程式 資料庫管理系統 CPU: Intel i7 Memory: 8 GB HD: 1 TB SSD / 2 TB HD 作業系統 Ubuntu 18.04.2 64-位元 Server 版 需帳號 / 密碼 網頁伺服器 + 應用程式 Apache 2.4.29 + Joomla 後者安裝好後需帳號 / 密碼管理 資料庫管理系統 MySQL 5.7.25 需帳號 / 密碼
這是您要填的 … 填啥呢? _ 之前的字串可用預設 or 修改成任何您喜歡的 …
(回顧 … )Our 平台 硬體 (PC) 作業系統 網頁伺服器 + 應用程式 資料庫管理系統 CPU: Intel i7 Memory: 8 GB HD: 1 TB SSD / 2 TB HD 作業系統 Ubuntu 18.04.2 64-位元 Server 版 需帳號 / 密碼 網頁伺服器 + 應用程式 Apache 2.4.29 + Joomla 後者安裝好後需帳號 / 密碼管理 資料庫管理系統 MySQL 5.7.25 需帳號 / 密碼
將 www 下的 installation 改名 (e.g., installation2)
網站
管理區: http://120.107.152.251/~tkwu/administrator
管理區
安裝中文
安裝中文
安裝中文
安裝 language, templates (or modules, etc) 前置動作 剛安裝完成 Joomla 後無法安裝中文化介面或 templates,原因在於安裝上述元件時需在您的目錄新增檔案 (&目錄),但安裝程式卻無權限進行這些新增的動作,解決之道就在於打開相關目錄之權限。 WHY?
哪些目錄的權限需要打開? Step1: 以 ssh client (or pietty) 登入系統 Step2: $ chmod -R 777 administrator components/ images/ language/ media/ modules/ plugins/ templates/ tmp/ cache/ libraries/
安裝中文
安裝中文
完成安裝後,記得將權限改回原來狀態 $ chmod -R 775 administrator components/ images/ language/ media/ modules/ plugins/ templates/ tmp/ cache/ libraries/
後續 … 找到你喜歡的 template, 安裝, 使用 搜尋你喜歡的 Joomla 模組 (module), 安裝, 使用 … Google is your friend …
3-tier Architecture 三層架構 (軟體&平台的角度) response Windows + Browser Apache httpd.conf Apache 設定檔 request (port #80) 檔案系統 query outcome http://..../~tkwu/ Unix + Apache MySQL ***.htm … ***.php /www/htdocs /home/tkwu/www PHP 模組 ***.php MySQL