動作

APM

出自 Itsmw

簡介

 OB2D/Ubuntu 上預載之網頁及資料庫伺服器有,網頁(WWW):Apache2,動態網頁語言:PHP5,資料庫:MySQL5。這三套的組合,可供網站管理者放置純靜態網頁(HTML)以及含 PHP+MySQL 的動態網頁。也因此,可以架設一些具 Web 2.0 互動功能的網站,如 XOOPS(CMS), Wordpress(部落格), Moodle(數位學習), MediaWiki(共筆系統), osTube(影音平台), Joomla(CMS), Drupal(CMS)...等等。這樣一來可以服務學校同仁,令所有行政人員皆可自主貼公告、影片及照片,二來減少網管網站內容維運的工作壓力。

開啟PORT

  • TCP 80   Apache2 + PHP
  • TCP 443  加密通道(HTTPS)
  • TCP 3306 MySQL



Ubuntu/Debian安裝簡介

以下安裝指令會同時安裝「Apahce2+PHP 網頁暨 MySQL資料庫伺服器」

  • 安裝指令
    • 切換成 root
      user@debian:~$ sudo -i
    • 安裝套件
      root@debian:~# apt-get install apache2 php5 php5-gd php-pear php-apc libapache2-mod-php5 php-date imagemagick php5-imagick php5-mcrypt php5-mysql php5-suhosin php5-xmlrpc php5-xsl phpmyadmin mysql-server
    • 註:安裝過程會要求輸入 MySQL root 及 phpmyadmin 管理密碼,通常我都會使用同一組,雖說這樣好像不符資安政策
  • 部份套件簡介
    • suhosin 是一套保護 php5 免受攻擊的資安軟體,十分有效,MyIP 站台的 LOG 檔就常出現 suhosin 阻擋成功的記錄。
    • php-apc 是快取器,加快 PHP 程式的執行速度
    • gd 及 imagick 是圖形庫
    • xmlrpc, xsl 等是 xml 工具
    • php-pear, php-date 等是一些擴充涵式庫



網頁伺服器 Apache2

基本設定

基本結構

  • 預設網頁存放位置: /var/www
    注意:除了上傳之必要子目錄外,此資料夾切不可以讓 www-data 可完整讀寫
  • 預設個人網頁位置: /home/user/public_html
  • 設定檔位置: /etc/apache2
    • 主設定檔: /etc/apache2/apache2.conf
    • 必載入之相關設定: /etc/apache2/conf.d/*
      注意:在此目錄下的所有設定檔皆會被執行,所以若有任何修改,其備份設定檔不可留在原地
    • 可用模組: /etc/apache2/mods-available
    • 模組啟用: /etc/apache2/mods-enabled
    • 可用虛擬站台: /etc/apache2/sites-available
    • 虛擬站台啟用: /etc/apache2/sites-enabled
  • 記錄檔
    • 存取記錄: /var/log/apache2/access.log
    • 錯誤記錄: /var/log/apache2/error.log


模組管理

  • 模組安裝管理
    • 列出可供安裝的 apache2 套件,裡面名為 apache2-xxx 之套件就是可安裝的模組:
      root@dns:~# apt-cache search libapache2
    • 安裝模組:
      root@dns:~# apt-get install libapache2-mod-xxxx
  • 啟用模組
    1. 列出模組真實名稱
      root@dns:~# cd /etc/apache2/mods-available
      root@dns:~# ls
    2. 啟用所找到模組,例如:啟用個人網頁模組
      root@dns:~# a2enmod userdir
      注意:模組設定檔大多會有 *.load 及 *.conf 但啟用時,不用輸入副檔名
    3. 重新啟動 Apache2
      root@dns:~# service apache2 restart
  • 註:Apache2 模組並不等於 PHP5 模組,請勿搞混


首頁基本參數

  • 首頁設定檔: /etc/apache2/sites-available/default
  • 參數解說
參數 選項 說明
DocumentRoot /var/www 首頁資料夾位置在 /var/www
Options Indexes 首頁沒 index.html 時,自動列出檔案清單

FollowSymLinks 允許使用 Alias 建立的資料夾捷徑(ex. phpmyadmin)

MultiViews 增強多國語言支持(Big5 & UTF8 同存也算),但會影響效能
IndexOptions Charset=utf-8 若打開 Indexes 列出檔案目錄時,指定中文檔名的編碼為 UTF-8
AllowOverride All 支援 htaccess 程度,若 All 代表完全支援 htaccess 語法
Order
allow, deny allow from 及 deny from 抵觸時,以 allow 占較高優先權
allow from all 允許所有 IP Address 瀏覽本網站



優化Big5與UTF8網頁並存時之處理

  • /etc/apache2/conf.d/charset → 把 AddDefaultCharset 註解掉
    root@dns:~# vi /etc/apache2/conf.d/charset
# AddDefaultCharset UTF-8


  • 在 /etc/apache2/sites-available/default ,加上 MultiViews
    root@dns:~# vi /etc/apache2/sites-available/default
...

     DocumentRoot /var/www
     <Directory />
          Options FollowSymLinks Multiviews
          AllowOverride All
     </Directory>
     <Directory /var/www/>
          Options FollowSymLinks MultiViews
          AllowOverride All
          Order allow,deny
          allow from all
     </Directory>
...



SSL加密網頁建立

  • 切換成 root
    • root@debian:~$ sudo -i
  • enable SSL:
    • root@debian:~# a2ensite default-ssl
    • root@debian:~# a2enmod ssl
  • restart Apache2:
    • root@debian:~# service apache2 restart
  • 試著連線看看:https://example.com
  • 建立自我簽認憑證
    • root@debian:~# mkdir /etc/apache2/ssl
    • root@debian:~# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

Generating a 2048 bit RSA private key
.......................................................................................................+++
........................................................................+++
writing new private key to '/etc/apache2/ssl/apache.key'



You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.



Country Name (2 letter code) [AU]:TW
State or Province Name (full name) [Some-State]:Tainan
Locality Name (eg, city) []:Shanhua
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Dacheng Elementary School
Organizational Unit Name (eg, section) []:Informatin Section
Common Name (e.g. server FQDN or YOUR name) []:Roger Liu
Email Address []:yourname@tn.edu.tw


  • 修改 apache2 站台設定檔 default-ssl
    1. 修改 ServerAdmin 加入管理者 mail
    2. 新增 ServerName 參數
    3. 修改 SSL 憑證參數
  • root@debian:~# vi /etc/apache2/sites-available/default-ssl

<VirtualHost _default_:443>
     ServerAdmin name@example.com
     ServerName example.com:443

     DocumentRoot /var/www
     .......
     SSLEngine on
     SSLCertificateFile /etc/apache2/ssl/apache.crt
     SSLCertificateKeyFile /etc/apache2/ssl/apache.key


  • 重新啟動 apache2
    • root@debian:~# service apache2 restart



個人網頁

 個人網頁功能是讓一般的使用者可以在自己的家目錄底下建立網頁,塔配 ftp 功能,讓使用者自己管理自己的網站。

  • B2D/OB2D Server 預設個人網頁位置: /home/username/public_html
  • 連線方式: http://your.host.name/~username/



OB2D e/sqz 及 Ubuntu 啟用個人網頁功能

 OB2D e 版本及 Ubuntu 11.04(大約)起,預設並沒啟用個人網頁的功能,因此要做一些調整。

  • 啟動個人網頁
    root@dns:~# a2enmod userdir
  • 重新啟動 Apache2
    root@dns:~# service apache2 restart
  • 若要讓個人網頁也可以執行 PHP Code, OB2D sqz 這個版本必須繼續修改 /etc/apache2/mods-available/php5.conf , 把下面幾行加 # 註解
<IfModule mod_php5.c>

    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
    # To re-enable php in user directories comment the following lines
    # (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
    # prevents .htaccess files from disabling it.
#    <IfModule mod_userdir.c>
#        <Directory /home/*/public_html>
#           php_admin_value engine Off
#        </Directory>
#    </IfModule>
</IfModule>



自訂個人網頁位置

 有時,自舊機器移轉至 OB2D 時,由於個人網頁的舊設定值是 /home/user_name/html 與 OB2D 上的預設值 /home/user_name/public_html 不同,因而出現一些問題。因此,我們可透過修改一些參數,而不必去把每個有個人網頁的使用者找出來修改其網頁資料夾位置仍能達成個人網頁的使用。


  • 注意: OB2D sqz 版預設沒有啟動個人網頁功能,請先啟用
    root@dns:~# a2enmod userdir
    root@dns:~# service apache2 restart
  • 設定檔 /etc/apache2/mods-available/userdir.conf
  • 修改下面紅字的部分
<IfModule mod_userdir.c>

   UserDir html
   UserDir disabled root

   <Directory /home/*/html>
      AllowOverride FileInfo AuthConfig Limit Indexes
      Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
      <Limit GET POST OPTIONS>
         Order allow,deny
         Allow from all
      </Limit>
      <LimitExcept GET POST OPTIONS>
         Order deny,allow
         Deny from all
      </LimitExcept>
   </Directory>
</IfModule>

  • 重新啟動 Apache2 伺服器
    root@dns:~# service apache2 restart
  • 注意: /home/user_name 資料夾的權限必須為 755 才可以


自訂錯誤訊息

 這裡所謂的錯誤訊息,是指外面連到學校網頁時,連到某些不存在或有設密碼的網頁時,Apache2 會送出一些警告訊息,以通知瀏覽者。但是,由於這些錯誤訊息並沒有中文版,會造成一些困擾。不過,我們仍可自行製作屬於自己的錯誤訊,比如:瀏覽到不存在網頁,您可以說「別搞怪!本站沒此頁面...看...什麼!」。

  • 設定檔位置,在此,筆者以 /etc/apache2/apache2.conf 為例
    • B2D Server(Janaca) ~ OB2D e系列: /etc/apache2/apache2.conf
    • OB2D sqz : /etc/apache2/conf.d/localized-error-pages
  • 修改步驟如下:
  1. 修改設定檔啟用自訂頁面,依本例:只建立 404 及 403 兩訊息,其餘不變
    root@dns:~# vi /etc/apache2/apache2.conf
    找到以下內容,修改紅字部分
    # Customizable error responses come in three flavors:

    # 1) plain text 2) local redirects 3) external redirects
    #
    # Some examples:
    #ErrorDocument 500 "The server made a boo boo."
    ErrorDocument 403 /errmsg/e403.php
    ErrorDocument 404 /errmsg/e404.php

    #ErrorDocument 402 http://www.example.com/subscription_info.html

  2. 找一個地方並寫好自訂訊息頁面,依本例其位置在: /var/www/errmsg/
    • 編輯 e403.php 權限不足警告頁例子
      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
      <html lang="zh-tw">
      
      <head>
      <meta content="text/html; charset=UTF-8" http-equiv="content-type">
      <title>403 Permission Deny!</title>
      </head>
      
      <body>
      <br><br>
      <h2 align="center">403 Permission Deny! 抱歉您無權閱讀本網頁!
      <br><br>
      <?php echo "<a href='http://".$_SERVER["HTTP_HOST"]."/>回本站首頁</a>" ?>
      </h2>
      </body>
      
      </html>
      
    • 編輯 e404.php 找不到頁面的警告頁例子
      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
      <html lang="zh-tw">
      
      <head>
      <meta content="text/html; charset=UTF-8" http-equiv="content-type">
      <title>404 not find!</title>
      </head>
      
      <body>
      <br><br>
      <h2 align="center">404! 找不到您要求的網頁!
      <br><br>
      <?php echo "<a href='http://".$_SERVER["HTTP_HOST"]."/>回本站首頁</a>" ?>
      </h2>
      </body>
      
      </html>
      
  3. 重新啟動 Apache2
    root@dns:~# service apache2 restart



新增虛擬站台

 在此,筆者是以下列之模擬情境列文說明,此情境適用於當學校有另一個人需獨立負責某一網站,網管人員可以在不交出 root 權限下,開放一組 PHP+MySQL 網頁空間給該使用者。

  • 管理者開設一組 Linux 及 MySQL 的 user 帳號/密碼,如:myuser。
  • 因此在 /home 及 /var/lib/mysql 底下皆會產生 myuser 資料夾。
    使用者只能用 ftp 及 phpmyadmin 管理自己的網頁及資料庫(看不到其他資料)。
  • 最後管理者改變網址之指定,如下所示:
http://your.host.name/~myuser   -->   http://myuser.your.host.name/ 


開設 myuser 帳號

  • 新增 Linux 帳號
    root@dns:~# adduser myuser
  • 使用 phpmyadmin 建立 MySQL 空間
  1. 建立資料庫 myuser
    在 phpmyadmin 首頁就有建立資料庫的功能,請依自己的需求建立
  2. 下 SQL 語法,建立 myuser 使用者並使其只能完全存取 myuser 資料庫
GRANT ALL PRIVILEGES
   ON myuser.*
   TO 'myuser'@'localhost'
   IDENTIFIED BY 'myuser_pwd';


修改 DNS 設定

新增 myuser.your.host.name 網址

以大成國小 dns 正解設定檔 /etc/bind/db.dc1es.tnc.edu.tw 舉例如下:

      

www  IN   CNAME   dns.dc1es.tnc.edu.tw.
myuser  IN   CNAME   dns.dc1es.tnc.edu.tw.
;
mail    IN   A   163.26.182.1
s2      IN   A   163.26.182.2
      

以上例而言:筆者新增了一筆 myuser.dc1es.tnc.edu.tw → 163.26.182.1 的 dns 記錄,也就是說目前 163.26.182.1 有多個英文網址,比如 :

  • dc1es.tnc.edu.tw
  • dns.dc1es.tnc.edu.tw
  • www.dc1es.tnc.edu.tw
  • mail.dc1es.tnc.edu.tw
  • myuser.dc1es.tnc.edu.tw

         :
         :
         等
         等

新增 myuser 虛擬站台

  • 設定檔: /etc/apache2/sites-available
  • 工作原理
    • 原預設值是針對 hostname 設定(ex: dns.dc1es.tnc.edu.tw)
    • 要啟用多組設定,不能針對您所要的 myuser 設定,必須考慮周詳。亦即把使用者連至學校首頁的所有可能性皆設妥。例如: http://www.dc1es.tnc.edu.tw 、http://dc1es.tnc.edu.tw 、http://163.26.182.1


修改 /etc/apache2/sites-available/default

修改 default 以供 http://dc1es.tnc.edu.tw 使用

  • root@dns:~# vi /etc/apache2/sites-available/default

  B2D Server ~ OB2D t3 前面幾行舉例如下:

NameVirtualHost *

<VirtualHost *>
   ServerAdmin webmaster@dns.dc1es.tnc.edu.tw
   # ServerName dc1es.tnc.edu.tw
   DocumentRoot /var/www/
      :
      :

  OB2D e1 ~ OB2D sqz 前面幾行舉例如下:

<VirtualHost *:80>

   ServerAdmin webmaster@dns.dc1es.tnc.edu.tw
   ServerName dc1es.tnc.edu.tw
   ServerAlias www.dc1es.tnc.edu.tw
   ServerAlias 163.26.182.1
   DocumentRoot /var/www/
      :
      :




建立 /etc/apache2/sites-available/myuser

建立 myuser 供 http://myuser.dc1es.tnc.edu.tw 使用

  • root@dns:/etc/apache2/sites-available# vi myuser (內容如下所示)

  B2D Server 示例

<VirtualHost 163.26.182.1:80>
        ServerAdmin myuser@dc1es.tnc.edu.tw
        ServerName myuser.dc1es.tnc.edu.tw
        DocumentRoot /home/myuser/public_html/
        <Directory /home/myuser/public_html/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                AddType application/x-httpd-php .php
        </Directory>
</VirtualHost>



  OB2D Server 示例

<VirtualHost *:80>
        ServerAdmin myuser@dc1es.tnc.edu.tw
        ServerName myuser.dc1es.tnc.edu.tw
        DocumentRoot /home/myuser/public_html/
        <Directory /home/myuser/public_html/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                AddType application/x-httpd-php .php
        </Directory>
</VirtualHost>



啟動各服務

  • root@dns:~# a2ensite myuser
  • root@dns:~# service bind9 restart
  • root@dns:~# service apache2 restart



Apache2 資安管理

特定網頁之連線限制

 若學校有些網頁只限校內 IP 讀取(intranet),但又不想另外架一台網頁伺服器,這時可以透過對資料夾的讀取權限制來達成此一目的。其設定方式可以參考 OB2D Server 上 ra-phpmyadmin 之參數寫法,詳見以下說明:


設定方式

  • 設定位置: /etc/apache2/conf.d
  • 舉例說明: /etc/apache2/conf.d/ra-phpmyadmin

# 要鎖的資料夾, 舉例而言 /var/www/myweb --> 要寫成 <Location /myweb>
<Location /phpmyadmin>
  order deny,allow
  deny from all
  # 可連線區, 新增教網中心網段
  allow from ::1 127.0.0.1 120.116.12.0/23 203.68.102.0/24 2001:288:75a6::/48
  Options FollowSymLinks MultiViews
</Location>


無法連線之錯誤訊息

Forbidden


You don't have permission to access /phpmyadmin/ on this server.
Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny8 with Suhosin-Patch Server at 163.26.182.234 Port 80


解除方式

 解除的方式很簡單,把 ra-phpmyadmin 搬走即可,做法如下:

  • root@dns:~# mv /etc/apache2/conf.d/ra-phpmyadmin /root
  • root@dns:~# service apache2 restart
  • 註:絕對不可以把原檔改個名字仍留 conf.d 資料夾內,因為這個資料夾內所有的檔案(無論檔名為何)皆會被執行。



上傳區禁止執行 Script 語言

 有時會因一些架站軟體的要求,要建立資料上傳區,如 /var/www/uploads ,而且其檔案權限必須是網頁伺服器(www-data)可讀取(或設成 777)。此時,若有心人士,無論是經由合法手段或透過 PHP 程式漏洞,把 *.php 丟到 uploads ,再經由瀏覽器執行,這樣就會產生資安風險。但如果,不讓 Apache2 伺服器對 uploads 底下特定類型 script 予以解譯並執行的話,那麼此風險就可降到最低。詳細做法如下:

  • 先確認 /etc/apache2/sites-available/default 之 AllowOverride 參數改為 All,擷取部分內容如下

    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    <Directory /var/www/>
        Options FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>


  • 如果上傳區在 /var/www/uploads/,在此資料夾底下,建立 .htaccess 檔案
    root@dns:~# vi /var/www/uploads/.htaccess
    (內容示例如下)

<FilesMatch "\.(php|php3|php4|php5|phtml|pl|py|sh|cgi)$">
deny from all
</FilesMatch>

  • 註:影響力只達 .htaccess 所在之資料夾


  • 改 .htaccess 權限為 root 所有,其他身份唯讀,以免被使用者上傳自己的 .htaccess 覆蓋
    root@dns:~# chown root.root /var/www/uploads/.htaccess
    root@dns:~# chmod 644 /var/www/uploads/.htaccess


鎖密碼網頁製作

 假設有個資料夾,裡面的網頁具有機密性,只允許特定人員登入後才可觀看,這可以透過 .htaccess 的設定來協助達成。


確認 AllowOverride 參數

 如上文所言,要啟用 .htaccess 之前,要先確認 /etc/apache2/sites-available/default 之 AllowOverride 參數是否為 All


建立 .htaccess

 假設 http://your.host.name/topsecu/ 這個網址是要帳號密碼認證,那麼其在主機的實體位置為 /var/www/topsecu ,因此,必須在此處建立 .htaccess ,其內容示例如下。

  • root@dns:~# vi /var/www/topsecu/.htaccess
AuthName "TopSecu"
AuthUserFile /var/passwords/topsecu.pwd
AuthType Basic
Require valid-user
  • AuthName 站名
  • AuthUserFile 密碼檔
  • AuthType Basic 基本型式授權(不必分組)
  • Require valid-user 要有帳號


建立密碼檔

  • 第一次建立
    root@dns:~# mkdir /var/passwords
    root@dns:~# htpasswd –c /var/passwords/topsecu.pwd username
  • -c」是供第一次建立用,若只是修改密碼或新增第二組帳號密碼,就不必再加此參數。
  • 經過上述動作,會建立一組帳號為 username 的認證



防止 XSS 及 ClickJacking 攻擊

<IfModule mod_headers.c>
   Header always append X-Frame-Options SAMEORIGIN
   Header always append X-XSS-Protection \"1; mode=block\"
   Header always append X-Content-Type-Options nonsniff
   Header unset Server
</IfModule>
  • 最後再重新啟動 apache2
    root@ubuntu:~# service apache2 restart



直接轉址

  • 當連線至主機網頁根目錄時,立即轉到 xoops 資料夾。在 /var/www/ 建立 index.html ,內容如下:
<!DOCTYPE html>
<html lang="zh-TW">
<head>
    <meta charset="utf-8">
    <title>自動轉址</title>
    <meta http-equiv="refresh" content="0;url=/xoops/">
</head>
<body>自動轉址</body>
</html>



Multiple Apache2 instances

Multiple Apache2 的意思是,可以在不同的通訊埠開啟另一個 apache2 服務,若我們需要用 Apache2 + PHP 執行一些風險較大的程式,那麼另外開一個埠獨立執行,並對其設限,是一個不錯的選擇。



網頁程式 PHP

基本設定

 Apache2 是網頁伺服器,PHP5網頁語言是以 Apache2 模組的形式存在。因此,若有任何設定變更,只要重新啟動 Apache2 即可。

  • 設定檔: /etc/php5/apache2/php.ini



PHP5 模組管理

 PHP5 的模組安裝/移除與 Apache2 做法一樣,皆是透過 Debian 的 DEB 套件庫來處理,舉例如下:

  • 模組搜尋
    root@dns:~# apt-cache search php5
  • 模組安裝
    root@dns:~# apt-get install php5-imagick
  • 模組移除
    root@dns:~# apt-get remove php5-imagick
  • 模組異動後,套用設定
    root@dns:~# service apache2 restart



加大檔案上傳限制

 PHP 預設檔案上傳限制為 2MB ,這對學校來說常常不夠用,不過我們可以透過 php.ini 的修改,來加大上傳限制。不過這裡的上傳限制與使用者網路空間限制(Quota)的意義不同,這裡是指用 PHP 寫的網站,若有上傳介面(如 SFS3, XOOPS...),無論是圖片或檔案之上傳限制。

  • 修改 /etc/php5/apahce2/php.ini ,修改下列三個參數
    root@dns:~#: vi /etc/php5/apache2/php.ini

;記憶體限制
memory_limit = 128M
;PHP 表單 POST 限制
post_max_size = 72M
;檔案大小限制
upload_max_filesize = 64M




其他設定

以下兩者皆已是預設值,不過仍提出以供參考

  • 注意 php.ini 內的 utf-8 或 big5 編碼問題
;default_charset = "iso-8859-1"

  註:加「;」變成註解,才可以讓 php 頁面自訂語系

  • 若 php 程式要重送 header (ex.強迫轉址),請注意
output_buffering = 4096



加速 PHP 執行

  • OB2D t1~t3 可以使用 APC 加速 PHP 執行
  1. root@dns:~# apt-get update
  2. root@dns:~# apt-get install php-pear
  3. root@dns:~# apt-get install php5-dev apache2-prefork-dev build-essential
  4. root@dns:~# pecl install apc
    出現 Use apxs to set compile flags (if using APC with Apache)? [yes] : 時,按「Enter」繼續
  5. 編輯 /etc/php5/apache2/php.ini ,加上
    extension=apc.so
  6. 重新啟動 Apache2
    root@dns:~# service apache2 restart


  • OB2D e1~sqz 可以使用 Xcache 加速 PHP 執行
    • xcache 簡介:它是 PHP 運算碼(opcode)快取器
    • 安裝
      root@dns:~# apt-get install php5-xcache
    • 重新啟動 Apache2
      root@dns:~# service apache2 restart



資料庫 MySQL

 Linux 上自由軟體授權的資料庫目前有兩大勢力,一是 MySQL 另一是 PostgreSQL ,OB2D 上預載的是 MySQL ,因此我們只針對 MySQL 進行簡易說明。



本文小檔案

__NORICHEDITOR__

題名: Title::網頁及資料庫 Apache2, PHP5, MySQL簡介
作者: Creator::itsmw作者群
主題/關鍵詞: Subject::apache,php,mysql
簡述: Description::網頁及資料庫 Apache2, PHP5, MySQL伺服器管理簡介
出版者: Publisher::台南縣教網中心 itsmw 計畫
其他參與者: Contributor::itsmw作者群
日期: Date::2010-6-20
文件類型: Type::08伺服器軟體
資料格式: Format::text/html
文件識別代號: Identifier::http://yh.tnc.edu.tw/itsmw/index.php/APM
來源: Source::http://b2d.tnc.edu.tw
語言: Language::zh-TW
相關資源: Relation::http://b2d.tnc.edu.tw
文件涵蓋範圍: Coverage::Linux平台
版權規範: Rights::GNU Free Documentation License 1.2