linux下安裝配置apache server。(非管理員命令,顧在絕大部分命令前加:sudo)java
先是嘗試了一下,直接命令行下,敲入命令: sudo apt-get install apache2 就能安裝。去到官網,說能夠直接下載源碼編譯安裝的。可是這裏沒有嘗試(由於已經用apt裝好啦~)。linux
用apt安裝好的apache,默認將配置文件放在/etc/apache2/ 下。web
http頁面默認放在/var/www/ 下。算法
啓動中止腳本爲: /etc/init.d/apache2apache
所以:安全
啓動命令爲:
ide
sudo /etc/init.d/apache2 startspa
中止命令:命令行
sudo /etc/init.d/apache2 stoprest
重啓命令:
sudo /etc/init.d/apache2 restart
/************************************/
查看 /etc/init.d/apache2 文件,能夠看到有以下內容:
case $1 in
start)
log_daemon_msg "Starting web server" "apache2"
if $APACHE2CTL start; then
if check_htcacheclean ; then
log_progress_msg htcacheclean
start_htcacheclean || log_end_msg 1
fi
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
if check_htcacheclean ; then
log_daemon_msg "Stopping web server" "htcacheclean"
stop_htcacheclean
log_progress_msg "apache2"
else
log_daemon_msg "Stopping web server" "apache2"
fi
if apache_wait_stop; then
log_end_msg 0
else
log_end_msg 1
fi
;;
graceful-stop)
if check_htcacheclean ; then
log_daemon_msg "Stopping web server" "htcacheclean"
stop_htcacheclean
log_progress_msg "apache2"
else
log_daemon_msg "Stopping web server" "apache2"
fi
if $APACHE2CTL graceful-stop; then
log_end_msg 0
else
log_end_msg 1
fi
;;
reload | force-reload | graceful)
if ! $APACHE2CTL configtest > /dev/null 2>&1; then
$APACHE2CTL configtest || true
log_end_msg 1
exit 1
fi
log_daemon_msg "Reloading web server config" "apache2"
if pidof_apache > /dev/null ; then
if $APACHE2CTL graceful $2 ; then
log_end_msg 0
else
log_end_msg 1
fi
fi
;;
restart)
if ! $APACHE2CTL configtest > /dev/null 2>&1; then
$APACHE2CTL configtest || true
log_end_msg 1
exit 1
fi
if check_htcacheclean ; then
log_daemon_msg "Restarting web server" "htcacheclean"
stop_htcacheclean
log_progress_msg apache2
else
log_daemon_msg "Restarting web server" "apache2"
fi
PID=$(pidof_apache) || true
if ! apache_wait_stop; then
log_end_msg 1 || true
fi
if $APACHE2CTL start; then
if check_htcacheclean ; then
start_htcacheclean || log_end_msg 1
fi
log_end_msg 0
else
log_end_msg 1
fi
;;
start-htcacheclean)
log_daemon_msg "Starting htcacheclean"
start_htcacheclean || log_end_msg 1
log_end_msg 0
;;
stop-htcacheclean)
log_daemon_msg "Stopping htcacheclean"
stop_htcacheclean
log_end_msg 0
;;
status)
PID=$(pidof_apache) || true
if [ -n "$PID" ]; then
echo "Apache2$DIR_SUFFIX is running (pid $PID)."
exit 0
else
echo "Apache2$DIR_SUFFIX is NOT running."
if [ -e "$PIDFILE" ]; then
exit 1
else
exit 3
fi
fi
;;
*)
/****************************************/
因爲apache 有默認的配置,所以安裝好以後能夠直接使用默認的配置運行,
本次修改的配置主要爲
DocumentRoot.
先是查看了 /etc/apache/apache2.conf 。從中得知此版本的apache的 配置文件
採用了全局配置+默認配置+用戶配置。
其中/etc/apache2/apache2.conf 主要設置了一些全局配置,
/etc/apache2/sites-available/ 下的兩個文件設置了一些默認配置,
在/etc/apache2/httpd.conf 主要用於設置用戶配置。
將sites-available/下的兩個文件中的內容拷貝到 /etc/apache2/httpd.conf 中,並修改內容。
此處修改的內容爲:
DocumentRoot /var/www (加紅部分改成本身欲設定的站點目錄,好比,本人設置爲 /home/xiaocc/stat station )
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/ (此處同上) >
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
(共須要修改四處,直接查找替換便可。!!!說明,必須保證本身站點中的權限值爲400以上。此處僅在127.0.0.1下訪問!!!)
保存退出,重啓apache便可。
總結,這次apache比較倉促,沒有按照建議先去官網仔細閱讀文檔。也沒有考慮其餘的安全性等。。。
涉及到一些linux 命令,也順便總結一下,算是給本身總結一下。
修改權限的命令:
chmod 權限值或者權限標識 + 須要修改權限的文件/文件夾。 其中 讀,寫,可執行 這三種權限用三位2進製表示,
1表示可執行,2表示可寫,4表示可讀, 其中,又用3位字符(?)表示3類角色對此文件(文件夾)的權限,好比 chomd 457 demo.java 其中,數字 4, 表示 擁有者對該文件僅有讀權限(4用二進制表示爲100), 數字5表示 同組用戶對此文件有讀和可執行權限(5用二進制表示爲101),數字7表示 非同組用戶&非文件擁有者對此文件具備讀,寫和執行權限(數字7用二進制表示爲111)。
對於文件夾可讀,可寫,可執行權限解釋:
可執行表示 是否能夠訪問該文件夾,可寫表示是否能夠在此文件夾下建立文件/文件夾。可讀表示是否能夠在瀏覽該文件夾下的內容(好比有一個文件夾對某類型的用戶的權限爲 可執行,可寫,不可讀。即3,則該類型的用戶能夠進入該文件夾,而且在該文件夾下建立文件/文件夾,可是不能瀏覽其中的文件。。。~~~linux對文件的控制,是比較嚴格的。好了,其餘的依次類推。)。
新建立的文件夾的默認權限是 775。
新建立的文件的默認權限是 664。
~~~~~~~~~~~~~~~~~~~~~~~~~~~
以上,羅羅嗦嗦,總結了一些東西,生怕本身忘記。還有一些隱含的,好比linux權限檢測算法,其餘權限,一些好用的i命令等。 明天再總結,晚了,睡覺,早起上班~