- http配置块
我天,nginx功能这么强大,它的安装包竟然1M都不到
nginx的编译安装
yum -y install gcc pcre-devel openssl-devel zlib-devel
nginx对应的编译安装方法根据需要启动相关配置
./configure --prefix=/apps/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module
编译
make -j 2 && make install
tree /apps/nginx/
#修改权限,完全控制文件夹的权限
chown -R nginx.nginx /apps/nginx
创建软连接启动
ln -s /apps/nginx/sbin/nginx /usr/sbin/
自己访问自己 curl 10.0.0.201
创建Nginx自启动文件
为了以后更方便。可以写一个service文件,把它设置为开机启动。
vim /usr/lib/systemd/system/nginx.service [Unit] Description=nginx - high performance web server Documentation=http://nginx.org/en/docs/ After=network-online.target remote-fs.target nss-lookup.target Wants=network-online.target [Service] Type=forking PIDFile=/apps/nginx/run/nginx.pid ExecStart=/apps/nginx/sbin/nginx -c /apps/nginx/conf/nginx.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s TERM $MAINPID [Install] WantedBy=multi-user.target
创建目录
mkdir /apps/nginx/run/
需要修改nginx.conf里的pid
修改为 pid /apps/nginx/run/nginx.pid;
启动nginx
systemctl enable --now nginx
ss -ntl
在http块中,如果有多个server语句块也就意味着有多个虚拟主机,nginx默认有一个server配置。server语句块里定义了listen监听端口,server_name主机头(询主机名称),location存放的网页放在哪个路径下,root html配置的是相当路径,将来我们可以自定义到别的路径。index的配置是去寻找root下的html里的的默认网页路径(谁做默认网页)。如下配置就是去寻找/apps/nginx/html目录里的index.html页面,如果找不到就找后面的index.htm
http语句快的公共配置
include mime.types 他的功能就是为了支持各种文件资源类型,比如除了支持html,还支持图片、多媒体,支持php。可以看下mime.types的配置内容
http{
...
...# 各个server的公共配置
...# 每个server用于定义一个虚拟主机,第一个server为默认虚拟服务器
server{
listen 80;
server_name localhost;
location /{
#默认路径的存放网站的数据目录,存放网页的路径,这个路径是相对于我们编译安装的/apps/nginx目录下的html
root html;
index index.html index.htm;
}
}
server{
...
server_name #虚拟主机名
root #主目录
alias #路径别名
location [operator] URL{ #指定url的特性
...
if condition{
...
}
}
}
}



