linux下安装配置apache server。(非管理员命令,顾在绝大部分命令前加:sudo)
先是尝试了一下,直接命令行下,敲入命令: sudo apt-get install apache2 就能安装。去到官网,说可以直接下载源码编译安装的。但是这里没有尝试(因为已经用apt装好啦~)。
用apt安装好的apache,默认将配置文件放在/etc/apache2/ 下。
http页面默认放在/var/www/ 下。
启动停止脚本为: /etc/init.d/apache2
因此:
启动命令为:
sudo /etc/init.d/apache2 start
停止命令:
sudo /etc/init.d/apache2 stop
重启命令:
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命令等。 明天再总结,晚了,睡觉,早起上班~