首页 > Web开发 > 详细

linux中搭建httpd服务

时间:2015-10-18 18:40:28      阅读:278      评论:0      收藏:0      [点我收藏+]

今日搭建httpd版本为:httpd-2.2.17.tar.gz 所用linux服务器为 :CentOs6.5


搭建准备 

  1. 卸载rpm方式安装的httpd包。

rpm -e httpd --nodeps && rpm -q httpd

2.卸载rpm方式安装的httpd包,及所属依赖关系。

rpm -e httpd httpd-manual webalizer subversion mod_python mod_ssl mod_perl system-config-httpd php php-cli php-ldap php-common mysql dovecot --nodeps (需要的情况下使用0-0)

3.将软件包,放入linux中 (本人习惯在root下)


开始搭建过程

  1. 解包

tar -zxf httpd-2.2.17.tar.gz && cd httpd-2.2.17

2.配置

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi

3.安装

make && make install

4.查看是否安装成功

ls /usr/local/httpd

优化路径

ln -s /usr/local/httpd/bin/* /usr/local/bin

查看是否优化成功

ls -l /usr/local/bin/httpd /usr/local/bin/apachectl

查看程序版本

httpd -v

添加http服务

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd

编辑httpd

vim /etc/init.d/httpd

添加

1 #!/bin/sh

  2 #chkconfig: 35 85 21

  3 #description:apache httpd server

 chkconfig --add httpd 

 chkconfig --list httpd

httpd           0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭


基本配置

vim /usr/local/httpd/conf/httpd.conf 

97 #ServerName www.benet.com

httpd -t


我遇到的错误:

(如果更改主机名为 benet, vim /etc/hosts 添加127.0.0.1 benet)

如果启动httpd报错

httpd: Could not reliably determine the server‘s fully qualified domain name, using localhost.localdomain for ServerName httpd not running, trying to start

解决问题的方法

vim /usr/local/httpd/conf/httpd.conf 

98行 加入一句 ServerName localhost:80

service httpd restart

netstat -anpt | grep httpd


网页文档

vim /usr/local/httpd/htdocs/index.html


httpd的主配文件

vim /usr/local/httpd/conf/httpd.conf 

主配文件(全局配置)

安装位置

 29 ServerRoot "/usr/local/httpd"

监听端口

40 Listen 80

运行用户 组

65 User daemon

66 Group daemon

管理员的邮箱

88 ServerAdmin you@example.com

默认的主页文件

104 DocumentRoot "/usr/local/httpd/htdocs"

默认主页

165 <IfModule dir_module>

166     DirectoryIndex index.html (可修改 可添加)

167 </IfModule>

错误日志文件

186 ErrorLog "logs/error_log"

日志级别

193 LogLevel warn(警告)

常见日志

215 CustomLog "logs/access_log" common

包含另一个配置文件

397 #Include conf/extra/httpd-default.conf


查看web站点访问情况

tail -f /usr/local/httpd/logs/access_log 


4.进程模式process 和 线程模式(thread)


进程是指在系统中正在进行的一个应用程序


线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程;


如何调优:(进程模式 )

#<IfModule mpm_prefork_module>

    StartServers          5     启动apache时候启动进程数量

    MinSpareServers 不能大大   5    最小空闲(备用)进程 如当前空闲子进程数少于MinSpareServers 那么Apache将以最大每秒一个的速度产生新子进程

   MaxSpareServers      10    最大空闲(备用)进程  如果当前有超过MaxSpareServers数量的空闲子进程,那么父进程将杀死多余的子进程。

   ServerLimit          150   服务器允许配置的进程数上限

   MaxClients          150    最大进程数 

   MaxRequestsPerChild   0

然后 使用ab 命令进行压测 ab -n 1000 -c 1000  httpd://localhost/ )-n 请求次数  -c 客户端数


区域配置项

114 <Directory />           /目录的开始

115     Options FollowSymLinks   允许使用符号链接

116     AllowOverride None      不允许隐含控制文件中的覆盖配置 

117     Order deny,allow       访问控制策略的应用顺序

118     Deny from all         禁止任何人访问此区域

119 </Directory>         /目录的结束










本文出自 “浅笑习惯囿你” 博客,谢绝转载!

linux中搭建httpd服务

原文:http://1339329314.blog.51cto.com/10122825/1703965

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!