一. Apache
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件
1.1 yum 安装
(1)关闭防火墙和selinux
systemctl stop firewalld --临时关闭防火墙
systemctl disable firewalld --永久关闭防火墙
setenforce 0 --临时关闭selinux
vim /etc/sysconfig/selinux --永久关闭selinux,如下图所示
(2)安装Apache并启动服务
yum install -y httpd --安装Apache
systemctl start httpd --启动Apache服务
(3)设置开机自启动
systemctl enable httpd
echo 'systemctl start httpd' >> /etc/rc.local
Apache 目录介绍
默认主页名称:index.html
系统产生的apache账户的家目录:/var/www
默认网站发布目录:/var/www/html
(1)apache的工作目录(基准目录)
conf --存储配置文件
conf.d --存储配置子文件
logs --存储日志
modules --存储模块
run --存储Pid文件,存放的pid号码。是主进程号
(2)主配置文件
vim /etc/httpd/conf/httpd.conf
ServerRoot "/etc/httpd" --工作目录
Listen 80 --监听端口
Listen 192.168.2.8:80 --指定监听的本地网卡 可以修改
User apache --子进程的用户,有可能被人改称www账户
Group apache --子进程的组
ServerAdmin root@localhost --设置管理员邮件地址
DocumentRoot "/var/www/html" --发布网站的默认目录,想改改这里。
IncludeOptional conf.d/*.conf --包含conf.d目录下的*.conf文件
(3)设置DocumentRoot指定目录的属性
<Directory "/var/www/html"> --网站容器开始标识
Options Indexes FollowSymLinks --找不到主页时,以目录的方式呈现,并允许链接到网站根目录以外
AllowOverride None --none不使用.htaccess控制,all允许
Require all granted --granted表示运行所有访问,denied表示拒绝所有访问
</Directory> --容器结束
DirectoryIndex index.html --定义主页文件,当访问到网站目录时如果有定义的主页文件,网站会自动访问
二.Nginx 介绍
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,由俄罗斯的程序设计师Igor Sysoev所开发,其特点是占用内存少,并发能力强。事实上nginx的并发能力确实在同类型的网页服务器中表现较好。
2.2 yum 安装
(1)去nginx官网下载安装包
(2)关闭防火墙关闭selinux
systemctl stop firewalld --临时关闭防火墙
systemctl disable firewalld --永久关闭防火墙
setenforce 0 --临时关闭selinux
vim /etc/sysconfig/selinux --永久关闭selinux(修改配置文件)
getenforce --查看selinux状态
(3)进行yum方式安装
配置nginx的yum源
cd /etc/yum.repos.d/
vim nginx.repo
====================================================================================
[nginx]
name=nginx
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
清理并建立缓存
yum clean all --清理缓存
yum makecache --建立缓存
安装nginx
yum install -y nginx --安装nginx
(4)启动nginx服务
systemctl start nginx --启动
systemctl restart nginx --重启
systemctl enable nginx --设置开机启动
systemctl stop nginx --关闭
(5)测试nginx主页
curl -I http://127.0.0.1
========================================================================================
HTTP/1.1 200 OK
Server: nginx/1.16.1
Date: Sat, 16 Nov 2019 10:49:48 GMT
Content-Type: text/html
Content-Length: 635
Last-Modified: Fri, 11 Oct 2019 06:45:33 GMT
Connection: keep-alive
ETag: "5da0250d-27b"
Accept-Ranges: bytes
(6)nginx配置文件
nginx主配置文件
/etc/nginx/nginx.conf
1
nginx虚拟主机配置文件
vi /etc/nginx/conf.d/default.conf
====================================================================================
server {
listen 80; #监听的端口
server_name localhost; #设置域名或主机名
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main; #日志存放路径
location / { #匹配请求路径
root /usr/share/nginx/html; #默认网站发布目录
index index.html index.htm; #默认打开的文档
}
2.3 编译安装
(1)去nginx官网下载安装包
(2)解压到指定目录
mkdir /usr/local/nginx/
tar xzvf nginx-1.18.0.tar.gz -C /usr/local/nginx/
(3)安装gcc等编译环境
yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make glibc automake autoconf #先一顿操作给它安装所需编译环境
(4)configure工具编译
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
注意:configure编译中将临时文件目录指定为/var/temp/nginx,故需要在/var下创建temp及nginx目录。
mkdir /var/temp/nginx/client -p
(5)nginx安装
make && make install
(6)启动nginx服务
cd /usr/local/nginx/sbin/ #先进入sbin目录下
./nginx #启动nginx
./nginx -s reload #刷新配置文件
(7)关闭nginx
cd /usr/local/nginx/sbin/ --先进入sbin目录下
./nginx -s stop --关闭nginx
./nginx -s quit --或者quit关闭nginx
(8)nginx的主配置文件
/usr/local/nginx/conf/nginx.conf --编译安装的nginx主配置文件路径
/etc/nginx/nginx.conf --yum安装的nginx主配置文件路径