复制 wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.27.tar.gz
wget http://mirrors.hust.edu.cn/apache/apr/apr-1.5.2.tar.gz
wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.gz
复制 tar zxvf httpd-2.4.27.tar.gz
tar zxvf apr-util-1.5.4.tar.gz
tar zxvf apr-1.5.2.tar.gz
cd /usr/local/src/apr-1.5.2
复制 ./configure --prefix=/usr/local/apr
make && make install
复制 cd /usr/local/src/apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
复制 cd /usr/local/src/httpd-2.4.27
./configure \ //这里的反斜杠是脱义字符,加上它我们可以把一行命令写成多行
--prefix=/usr/local/apache2.4 \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--enable-so \
--enable-mods-shared=most
make && make install
复制 /usr/local/apache/bin/apachectl start
复制 httpd: apr_sockaddr_info_get() failed for 【linux】
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
解决方法\(问题在于主机名不匹配\)
警告1 :在/etc/hosts中的127.0.0.1行后添加linux
警告2 :在httpd的配置文件/usr/local/apache/conf/httpd.conf中的ServerName行中改为 ServerName linux:80
复制 cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
vim /etc/init.d/httpd
# 加入:
#chkconfig:345 61 61
#description:Apache httpd
# 开机启动
chkconfig --add httpd
chkconfig --level 345 httpd on
复制 /usr/local/apache/bin/apachectl -l
有prefork.c 为prefork模式
有worker.c 为worker模式
prefork模式使用多个子进程,每个子进程只有一个线程。每个进程在某个确定的时间只能维持一个连接。在大多数平台上,Prefork MPM在
效率上要比Worker MPM要高,但是内存使用大得多。prefork的无线程设计在某些情况下将比worker更有优势:它可以使用那些没有处理好线
程安全的第三方模块,并且对于那些线程调试困难的平台而言,它也更容易调试一些。
worker模式使用多个子进程,每个子进程有多个线程。每个线程在某个确定的时间只能维持一个连接。通常来说,在一个高流量的HTTP服务
器上,Worker MPM是个比较好的选择,因为Worker MPM的内存使用比Prefork MPM要低得多。但worker MPM也由不完善的地方,如果一个线程
崩溃,整个进程就会连同其所有线程一起"死掉"。由于线程共享内存空间,所以一个程序在运行时必须被系统识别为"每个线程都是安全的"。
Event MPM:以上两种稳定的MPM方式在非常繁忙的服务器应用下都有些不足。尽管HTTP的Keepalive方式能减少TCP连接数量和网络负载,但是
Keepalive需要和服务进程或者线程绑定,这就导致一个繁忙的服务器会耗光所有的线程。 Event MPM是解决这个问题的一种新模型,它把服务
进程从连接中分离出来。在服务器处理速度很快,同时具有非常高的点击率时,可用的线程数量就是关键的资源限 制,此时Event MPM方式是最
有效的。一个以Worker MPM方式工作的繁忙服务器能够承受每秒好几万次的访问量(例如在大型新闻服务站点的高峰时),而Event MPM可以用来
处理更高负载。值得注意的是,Event MPM不能在安全HTTP(HTTPS)访问下工作
总的来说,prefork方式速度要稍高于worker,然而它需要的cpu和memory资源也稍多于woker。