【大神笔记】搭建apache服务
web网站服务
Apache HTTP Server提供网页浏览服务
WISA W:Windows I:IIS S:SqlServer A:Asp
LAMP L:Linux A:Apache M:Mysql P:PHP/Perl/Python
LNMP L:Linux N:Nginx M:Mysql P:PHP/Perl/Python
安装apache
vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.6.20
NETMASK=255.255.255.0
systemctl restart network
systemctl stop firewalld
setenforce 0
-
util:软件工具包。 -
lib:库文件包。 -
devel:开发工具包。
APR:apache portable runtime:apache可移植环境
apr和apr-util:通用开发组件
tar zxvf apr-1.5.2.tar.gz -C /usr/src/
cd /usr/src/apr-1.5.2/
./configure --prefix=/usr/local/apr && make -j 4 && make install
tar zxvf apr-util-1.5.4.tar.gz -C /usr/src/
cd /usr/src/apr-util-1.5.4/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make -j 4 && make install
mount /dev/cdrom /media/
rm -rf /etc/yum.repos.d/*
vim /etc/yum.repos.d/yum.repo
[yum]
name=yum
baseurl=file:///media
enabled=1
gpgcheck=0
yum -y install pcre-devel openssl-devel zlib-devel
tar zxvf httpd-2.4.25.tar.gz -C /usr/src/cd /usr/src/httpd-2.4.25/./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-mpms-shared=all --with-mpm=event --enable-deflate --enable-cgid --enable-modules=most --enable-shared=most --enable-ssl选项:--with-apr=/usr/local/apr:指定apr路径--with-apr-util=/usr/local/apr-util/:指定apr-util路径--enable-modules=most:支持大部分模块--enable-mods-shared=most:支持共享模块--enable-mpms-shared=all:支持共享MPM:多道处理模块(prefork,worker,event) 支持默认的MPM(apache2.2版本:默认支持prefork,apache2.4版本:默认支持event) prefork:单进程响应单请求(web服务器提空多个空闲进程,供客户端访问) worker:单进程多线程,每个线程响应一个请求 event:一个进程生成多个线程,每个线程响应多个请求--enable-deflate:支持内容压缩(web中压缩文本,httpd只能处理静态请求)--enable-cgid:支持线程MPMs--enable-ssl:支持sslmakemake install
ls /usr/local/httpd/
bin:二进制文件
cgi-bin:通用网关接口
conf:配置文件
error:错误信息
错误日志:服务无法启动logs/error_log
错误信息:访问不了网站,返回个用户的页面。请求超时。
icons:图标
logs:日志 access_log:访问日志 error_log:错误日志
manual:帮助文档,官方网站的内容放这
modules:模块。和某一个应用程序对接需要到模块。
include:同文件。
htdocs:网页目录。
build:构建工具目录,编译安装都有。
ln -s /usr/local/httpd/bin/* /usr/local/bin/
ln -s /usr/local/httpd/include/* /usr/include/
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
vim /etc/init.d/httpd
#chkconfig:35 25 25
服务识别参数,在级别3、5中启动;启动和关闭的顺序分别为25、25
第一个25表示启动优先级
第二个25表示关闭优先级
将httpd服务添加到服务管理器
chkconfig --add httpd
设置开机自动启动
chkconfig httpd on
vim /lib/systemd/system/httpd.service
[Unit]
Description=The Apache HTTP Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart=/usr/local/bin/apachectl $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=On-failure
RestartSec=42s
[Install]
WantedBy=graphical.target
选项:
Description:设置服务单元描述字符串。
After:设置服务单元的启动先后顺序。例如,httpd.service单元文件中出现“After=network.target”表示启动时先启动network.target,后启动httpd.service,关闭时顺序相反。与After字段相对应的还有一个Before字段,如httpd.service单元文件中出现“Before=network.target”表示启动时先启动httpd.service,后启动 network.target。
Type:设置服务进程的启动类型,需要注意的是,当启动类型为forking时需要同时设置 PIDFILE配置项,以帮助systemd准确定位到服务的主进程。
PIDFILE:设置服务的守护进程的PID文件。
ExecStart:设置服务启动时执行的命令。
ExecReload:设置服务重新加载时执行的命令。
KillMode:设置在单元停止时,杀死进程的方法.process表示仅杀死主进程。
Restart:设置服务进程正常退出、异常退出、被杀死、超时的时候,是否重启该服务,on -failure表示仅在进程异常退出时重启。
RestartSec:设置在重启服务前暂停多长时间,默认值是100毫秒(100ms)。
WantedBy:设置该服务所在的Target(运行目标)。WantedBy=graphical.target(图形界面多用户系统)是指.httpd所在的Target是graphical.target。这个设置非常重要,因执行“systemctl enable httpd.service”命令时,httpd.service的符号链接就会放在/etc/systemd/system目录下的graphical.target.wants子目录中。在系统进入 graphical.target运行目标时,该目录下的所有服务均开机启动。该配置项常用的 Target除了graphical.target之外,还有multi-user.target(非图形界面多用户系统)。
搭建一个小网站
修改主配置文件
vim /usr/local/httpd/conf/httpd.conf
ServerName 192.168.6.10:80 203
vim /usr/local/httpd/htdocs/index.html
内容自定义
重启
systemctl restart httpd
开启客户端配置IP地址验证
firefox 192.168.6.10