1、Apache是什么?
2、Apache的特点及应用场合
1)特点
功能强大、配置简单、速度快、应用广泛、性能稳定可靠、并可做代理服务器或负载均衡来使用。
2)应用场合
- 使用Apache运行静态HTML网页、图片;
- 使用Apache结合Tomcat/Resin运行JSP,JAVA等程序;
- 使用Apache,作代理,负载均衡等。
3、安装Apache
1)检查是否安装与否;
rpm -qa httpd
2)下载及安装
1、Apache是什么?
2、Apache的特点及应用场合
1)特点
功能强大、配置简单、速度快、应用广泛、性能稳定可靠、并可做代理服务器或负载均衡来使用。
2)应用场合
* 使用Apache运行静态HTML网页、图片;
* 使用Apache结合Tomcat/Resin运行JSP,JAVA等程序;
* 使用Apache,作代理,负载均衡等。
3、安装Apache
1)检查是否安装与否;
rpm -qa httpd
2)下载及安装
wget --no-check-certificate ‘https://www-us.apache.org/dist/httpd/httpd-2.4.37.tar.gz’
[root@jackroo tools]# ls httpd-2.2.27.tar.gz -sh #sh查看大小
7.2M httpd-2.2.27.tar.gz
tar xf httpd-2.2.27.tar.gz #解压
安装
./configure
–prefix=/application/apache2.2.27
–enable-expires
–enable-headers
–enable-modules=most
–enable-so
–with-mpm=worker
–enable-deflate
–enable-rewrite \
报错如下:
checking for zlib location… not found
checking whether to enable mod_deflate… configure: error: mod_deflate has been requeste
d but can not be built due to prerequisite failures
解决:
yum install zlib zlib-devel -y
接着安装
make
make install
[root@jackroo httpd-2.2.27]# echo $? #检查是否安装完成
0
ln -s /application/apache2.2.27/ /application/apache #软链接
"Apache服务讲解.md" 56L, 1469C written
[root@jackroo data]# vim Apache服务讲解.md
wget --no-check-certificate 'https://www-us.apache.org/dist/httpd/httpd-2.4.37.tar.gz'
[root@jackroo tools]# ls httpd-2.2.27.tar.gz -sh #sh查看大小
--enable-rewrite \
解决:
yum install zlib zlib-devel -y
0
ln -s /application/apache2.2.27/ /application/apache #软链接
#检查语法及启动
[root@jackroo htdocs]# /application/apache/bin/apachectl -t
Syntax OK
[root@jackroo htdocs]# /application/apache/bin/apachectl start
[root@jackroo htdocs]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 21330 root 4u IPv6 74851 0t0 TCP *:http (LISTEN)
httpd 21332 daemon 4u IPv6 74851 0t0 TCP *:http (LISTEN)
httpd 21333 daemon 4u IPv6 74851 0t0 TCP *:http (LISTEN)
httpd 21334 daemon 4u IPv6 74851 0t0 TCP *:http (LISTEN)
[root@jackroo htdocs]# ps -ef|grep httpd
[root@jackroo htdocs]# ifconfig eth1
eth1 Link encap:Ethernet HWaddr 08:00:27:A9:04:1A
inet addr:192.168.1.7 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: 240e:9c:ed6:300:a00:27ff:fea9:41a/64 Scope:Global
inet6 addr: fe80::a00:27ff:fea9:41a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:26399 errors:0 dropped:0 overruns:0 frame:0
TX packets:17268 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:21476161 (20.4 MiB) TX bytes:2144442 (2.0 MiB)
http://192.168.1.7/
It works
启动失败问题排查:
/application/apache/htdocs
#htdocs目录下修改index.html进行测试。
5、主配置文件讲解
grep -Ev “#|^KaTeX parse error: Expected 'EOF', got '#' at position 57: …ori Listen 80 #̲监听的端口,默认监听本机所有i…” httpd.conf>http.conf.ori
cat http.conf.ori
Listen 80 #监听的端口,默认监听本机所有ip地址
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
User daemon #进程,默认用户
Group daemon
ServerAdmin you@example.com #管理员的邮箱
DocumentRoot “/application/apache2.2.27/htdocs” #默认的站点目录
#权限控制
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
<Directory “/application/apache2.2.27/htdocs”> #添加一个站点,必须这样添加一个
Options Indexes FollowSymLinks #优化1,Indexes前增加-号或者删除,不对外展示目录
AllowOverride None
Order allow,deny
Allow from all
DirectoryIndex index.html
<FilesMatch “^.ht”>
Order allow,deny
Deny from all
Satisfy All
ErrorLog “logs/error_log”
LogLevel warn
ServerAdmin you@example.com #管理员的邮箱
DocumentRoot “/application/apache2.2.27/htdocs” #默认的站点目录
#权限控制
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
<Directory “/application/apache2.2.27/htdocs”> #添加一个站点,必须这样添加一个
Options Indexes FollowSymLinks #优化1,Indexes前增加-号或者删除,不对外展示目录
AllowOverride None
Order allow,deny
Allow from all
#默认站点目录首页
DirectoryIndex index.html
<FilesMatch “^.ht”>
Order allow,deny
Deny from all
Satisfy All
ErrorLog “logs/error_log” #错误日志
LogLevel warn
LogFormat “%h %l %u %t “%r” %>s %b “%{Referer}i” “%{User-Agent}i”” combined
LogFormat “%h %l %u %t “%r” %>s %b” common
ScriptAlias /cgi-bin/ “/application/apache2.2.27/cgi-bin/”
use only name-based virtual hosts so the server doesn’t need to worry about
```oot@jackroo conf]# …/bin/apachectl graceful
[root@jackroo conf]# pwd
/application/apache/conf
6、扩展的配置文件
/application/apache/conf/extra
[root@jackroo extra]# ls
httpd-autoindex.conf httpd-languages.conf httpd-ssl.conf
httpd-dav.conf httpd-manual.conf httpd-userdir.conf
httpd-default.conf httpd-mpm.conf httpd-vhosts.conf
httpd-info.conf httpd-multilang-errordoc.conf
1)[root@jackroo extra]# vim httpd-vhosts.conf
2)[root@jackroo extra]# vim httpd-mpm.conf
3)[root@jackroo extra]# cat httpd-default.conf