一 . 安装步骤 :
(1)、官方网站:[http://nginx.org/] 下载相应版本
(2)、要求的安装环境
需要安装gcc的环境。yum install gcc-c++
第三方的开发包 :
-
PCRE
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
yum install -y pcre pcre-deve
l
注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。- zlib
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
yum install -y zlib zlib-devel
- openssl
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
yum install -y openssl openssl-devel
(3)、上传安装包至Linux,解压缩,执行如下命令创建Makefile文件
./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
(4)、编译 make
(5)、make install
(6)、注意 : 启动nginx之前,上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
mkdir /var/temp/nginx/client -p
(7)、在 nginx 的 sbin 目录下启动 Nginx ./nginx
(8)、显示进程 ps aux|grep nginx
(显示nginx进程 , " | "符号右边为筛选条件,左边为显示所有进程)
(9)、外部检验 ,打开浏览器,访问虚拟机(默认是80端口) ,显示如下,成功
(10)、关闭Nginx : ./nginx -s stop
或者 ./nginx -s quit
(11)、重启 , 先关闭 , 再打开 , 刷新配置文件命令 ./nginx -s reload
二 . 相关配置 :
- 在Linux环境下编辑不方便且容易出错 , 这里我们可以借助 EditPlus 来完成 虚拟主机配置 ,Nginx 的配置文件
/usr/local/nginx/conf/nginx.conf ( 以下展示内容为已经删除不必要的注释部分后所得 )
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server { // 一个 server 节点就是一个虚拟主机
listen 80; //80 为端口号
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html; // 这里的 html 是 Nginx 下的一个文件夹
index index.html index.htm;
}
}
}
- 添加多个虚拟主机即添加多个 server 节点 , 并同时修改端口号 , 也可增加不同的 html 目录
- 注 :目录修改的同时要在Nginx 下创建同名文件夹 ,可使用命令
[root@localhost nginx]# cp -r html html81
实现
" cp - r " 为拷贝目录及目录下所有文件 ,如拷贝的是文件 , " -r " 不用添加
" html " 为原文件夹 " html 81 " 是我拷贝并改名后的文件夹 - 编辑过后别忘了刷新配置文件
[root@localhost nginx]# sbin/nginx -s reload