商務經營與雲端整合上課補充教材


Chapter 4:WWW 伺服器的安裝與設定
  1. WWW 伺服器需要的元件
    1. WWW 伺服器 (作業系統、伺服器軟體、網頁程式語言與資料庫系統等)
    2. DNS 伺服器的主機名稱轉 IP 功能
    3. 瀏覽器功能 (browser)
    4. 說明:這幾個元件之間的關係為何?請繪圖說明
  2. 常見依據不同作業系統所需要的 WWW 元件組成
    1. 不同陣營:作業系統 + WWW伺服器軟體 + 資料庫 + 網頁程式設計
    2. Linux 陣營: Linux + Apache + MySQL + PHP --> LAMP
    3. Windows 陣營: Windows + IIS + MSSQL + ASP(.NET)
  3. 如何讓你的伺服器具有『合法的主機名稱』?
    1. 相關原理可以參考鳥站寫的說明文件: http://linux.vbird.org/linux_server/0270dynamic_dns.php
    2. 可以申請需要費用的主機名稱,可以向中華電信提出申請,例如:http://nweb.hinet.net/
    3. 如果想要免費的空間,可以到 http://www.no-ip.com/ 申請!
  4. 安裝 WWW 動態網站所需要的各項元件軟體
    1. 安裝軟體的方式:
      # yum install httpd mariadb mariadb-server php php-mysql
    2. 啟動與觀察的方式:
      # systemctl start  httpd
      # systemctl enable httpd
      # systemctl start  mariadb
      # systemctl enable mariadb
      # systemctl status httpd
      # systemctl status mariadb
      注意要看到有 enable 以及 active 的輸出字樣才是成功了
    3. 查看一下 http 這個服務有沒有在 firewall-cmd --list-all 的項目中出現,若沒有,請務必要放行 http 才行。
    4. 使用 netstat -tlunp 查看一下有沒有相關的服務埠口啟動了
  5. WWW 伺服器路徑放置與 PHP 測試
    1. 注意,首頁檔名務必是 index.html 或 index.php 才行
    2. 主要放置網頁檔案的位置在 /var/www/html/ 這個目錄下
    3. 在 Linux 底下,建議直接使用 vim 編輯網頁即可,在 windows 底下,建議使用 notepad++
    4. 練習:
      1. 依據前述方法,安裝並啟動 httpd, mariadb, php 等軟體
      2. 寫一個首頁,裡面有你的姓名與學號
      3. 寫一個 test.php 的網頁,裡面填寫 <?php phpinfo() ?> ,再由首頁連結到此頁面,確認 PHP 是有被支援的
  6. 建立資料庫系統
    1. 確認一下 mariadb 是否啟動,且資料庫管理員不用密碼即可登入
      # mysql -u root
      MariaDB [(none)]> exit
    2. 建立 mariadb 內的管理員 (root) 密碼
      # mysqladmin -u root password 'your.password'
      # mysql -u root -p
      Enter password: 
      
      MariaDB [(none)]> exit
    3. 建立要給使用者用的帳號、密碼與資料庫名稱
      # mysql -u root -p
      Enter password:  
      MariaDB [(none)]> create database dicdb;  //注意每個指令後面都要加上分號 (;)
      Query OK, 1 row affected (0.01 sec)
      
      MariaDB [(none)]> grant all privileges on dicdb.* to dicuser@localhost identified by 'dicpw' ;
      Query OK, 0 rows affected (0.00 sec)
      
      MariaDB [(none)]> show databases;
      +--------------------+
      | Database           |
      +--------------------+
      | information_schema |
      | mysql              |  // 用來記錄 MySQL 帳號、主機等重要資訊的主要資料庫!
      | test               | 
      | dicdb              |  // 我們剛剛建立的資料庫在此
      +--------------------+
      4 rows in set (0.00 sec)
      
      MariaDB [(none)]> use mysql;
      MariaDB [(mysql)]> select * from user where user = 'dicuser';
      // 上面兩個指令在查詢系統有沒有 vbirduser 這個帳號,若有出現一堆東西,
      // 那就是查詢到該帳號了!這樣就建置妥當囉!
      
      MariaDB [(mysql)]> exit
Top
HOME