更新套件情單
$ sudo apt-get update
Apache 2 安裝
$ sudo apt-get install apache2
[sudo] password for student:
正在讀取套件清單... 完成
正在重建相依關係
正在讀取狀態資料... 完成
以下套件是被自動安裝進來的,且已不再會被用到了:
linux-headers-2.6.32-21 linux-headers-2.6.32-22
linux-headers-2.6.32-22-generic-pae
使用 'apt-get autoremove' 來將其移除。
下列的額外套件將被安裝:
apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1
libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
建議套件:
apache2-doc apache2-suexec apache2-suexec-custom
下列【新】套件將會被安裝:
apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common
libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap
升級 0 個,新安裝 9 個,移除 0 個,有 1 個未被升級。
需要下載 3,328kB 的套件檔。
此操作完成之後,會多佔用 10.1MB 的磁碟空間。
是否繼續進行 [Y/n]?y
下載:1 http://tw.archive.ubuntu.com/ubuntu/ lucid/main libapr1 1.3.8-1build1 [116kB]
下載:2 http://tw.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1 1.3.9+dfsg-3build1 [85.4kB]
下載:3 http://tw.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1-dbd-sqlite3 1.3.9+dfsg-3build1 [27.1kB]
下載:4 http://tw.archive.ubuntu.com/ubuntu/ lucid/main libaprutil1-ldap 1.3.9+dfsg-3build1 [25.1kB]
下載:5 http://tw.archive.ubuntu.com/ubuntu/ lucid/main apache2.2-bin 2.2.14-5ubuntu8 [2,622kB]
下載:6 http://tw.archive.ubuntu.com/ubuntu/ lucid/main apache2-utils 2.2.14-5ubuntu8 [159kB]
下載:7 http://tw.archive.ubuntu.com/ubuntu/ lucid/main apache2.2-common 2.2.14-5ubuntu8 [290kB]
下載:8 http://tw.archive.ubuntu.com/ubuntu/ lucid/main apache2-mpm-worker 2.2.14-5ubuntu8 [2,364B]
下載:9 http://tw.archive.ubuntu.com/ubuntu/ lucid/main apache2 2.2.14-5ubuntu8 [1,482B]
取得 3,328kB 用了 2s (1,345kB/s)
選取了原先未被選取的套件 libapr1。
(正在讀取資料庫 ... 系統目前共安裝了 159384 個檔案和目錄。)
正在解開 libapr1 (從 .../libapr1_1.3.8-1build1_i386.deb)...
選取了原先未被選取的套件 libaprutil1。
正在解開 libaprutil1 (從 .../libaprutil1_1.3.9+dfsg-3build1_i386.deb)...
選取了原先未被選取的套件 libaprutil1-dbd-sqlite3。
正在解開 libaprutil1-dbd-sqlite3 (從 .../libaprutil1-dbd-sqlite3_1.3.9+dfsg-3build1_i386.deb)...
選取了原先未被選取的套件 libaprutil1-ldap。
正在解開 libaprutil1-ldap (從 .../libaprutil1-ldap_1.3.9+dfsg-3build1_i386.deb)...
選取了原先未被選取的套件 apache2.2-bin。
正在解開 apache2.2-bin (從 .../apache2.2-bin_2.2.14-5ubuntu8_i386.deb)...
選取了原先未被選取的套件 apache2-utils。
正在解開 apache2-utils (從 .../apache2-utils_2.2.14-5ubuntu8_i386.deb)...
選取了原先未被選取的套件 apache2.2-common。
正在解開 apache2.2-common (從 .../apache2.2-common_2.2.14-5ubuntu8_i386.deb)...
選取了原先未被選取的套件 apache2-mpm-worker。
正在解開 apache2-mpm-worker (從 .../apache2-mpm-worker_2.2.14-5ubuntu8_i386.deb)...
選取了原先未被選取的套件 apache2。
正在解開 apache2 (從 .../apache2_2.2.14-5ubuntu8_i386.deb)...
正在進行 man-db 的觸發程式 ...
正在進行 ufw 的觸發程式 ...
正在進行 ureadahead 的觸發程式 ...
ureadahead will be reprofiled on next reboot
正在設定 libapr1 (1.3.8-1build1) ...
正在設定 libaprutil1 (1.3.9+dfsg-3build1) ...
正在設定 libaprutil1-dbd-sqlite3 (1.3.9+dfsg-3build1) ...
正在設定 libaprutil1-ldap (1.3.9+dfsg-3build1) ...
正在設定 apache2.2-bin (2.2.14-5ubuntu8) ...
正在設定 apache2-utils (2.2.14-5ubuntu8) ...
正在設定 apache2.2-common (2.2.14-5ubuntu8) ...
Enabling site default.
Enabling module alias.
Enabling module autoindex.
Enabling module dir.
Enabling module env.
Enabling module mime.
Enabling module negotiation.
Enabling module setenvif.
Enabling module status.
Enabling module auth_basic.
Enabling module deflate.
Enabling module authz_default.
Enabling module authz_user.
Enabling module authz_groupfile.
Enabling module authn_file.
Enabling module authz_host.
Enabling module reqtimeout.
正在設定 apache2-mpm-worker (2.2.14-5ubuntu8) ...
* Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[ OK ]
正在設定 apache2 (2.2.14-5ubuntu8) ...
正在進行 libc-bin 的觸發程式 ...
ldconfig deferred processing now taking place
[問題] 由上述安裝資訊, Apache 2 已啟動那些 Module ?
檢視 Apache 2 的內部設定值
$ /usr/sbin/apache2 -V
Server version: Apache/2.2.14 (Ubuntu)
Server built: Apr 13 2010 19:29:28
Server's Module Magic Number: 20051115:23
Server loaded: APR 1.3.8, APR-Util 1.3.9
Compiled using: APR 1.3.8, APR-Util 1.3.9
Architecture: 32-bit
Server MPM: Worker
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/worker"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT=""
-D SUEXEC_BIN="/usr/lib/apache2/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/etc/apache2/mime.types"
-D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"
[註] 由上面資訊中, 可以得知 Apache 2 的主要設定檔是 /etc/apache2/apache2.conf
檢視 /etc/apache2/sites-enabled/000-default 設定檔 (網站根目錄, cgi-bin 目錄)
這個設定檔, 定義 Apache 2 網站根目錄所在的目錄 (DocumentRoot /var/www), 還有定義 /cgi-bin 目錄, 執行 CGI 程式
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
網站根目錄放置在 /var/www 這個目錄嗎? 為什麼呢?因為 DocumentRoot 這個設定值的關係啦!此外,由於 Apache 允許 Internet 對我們的資料進行瀏覽, 所以你當然必須要針對可被瀏覽的目錄進行權限的相關設定,那就是 <Directory> 這個設定值的重要特色!先讓我們來看看預設的主網頁設定吧!
DocumentRoot "/var/www" 放置首頁的目錄!這個設定值重要到不行,因為他規範了 WWW 伺服器主網頁所放置的『目錄』所在。這個設定值是可以被隨意更動的,不過更動之後你必須要針對該目錄進行權限設定,也就是底下要講到的 Directory 這個設定值來規範目錄的權限才行喔!
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
以最嚴格設定值, 設定系統根目錄 (/)
沒有留言:
張貼留言