1、安装工具包 wget vim gcc
yum install -y wget
yum install -y vim-enhanced
yum install -y make cmake gcc gcc-c++
2、下载Nginx安装包
注意:下载安装包时,最好创建一个文件夹,并cd到文件夹中。方便查找
wget http://nginx.org/download/nginx-1.8.1.tar.gz
3、安装依赖包
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
4、解压文件到/usr/local/目录下
tar -zxvf nginx-1.8.1.tar.gz
5、进入到nginx-1.8.1目录下
cd nginx-1.8.1/
执行./configure
命令
./configure --prefix=/usr/local/nginx
6、编译
make
安装
make install
7、启动Nginx
/usr/local/nginx/sbin/nginx
查看nginx信息
ps -ef | grep nginx
8、关闭Nginx
/usr/local/nginx/sbin/nginx -s stop
9、重启Nginx
/usr/local/nginx/sbin/nginx -s reload
查看端口 netstat -ntlp
杀死端口 kill -9
+ 端口号
10、配置防火墙 默认80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
刷新
firewall-cmd --reload
11、Nginx描述规则
vim nginx.conf
12、代理其他路径文件 alias
location / {
root html;
index index.html index.htm;
}
/** 参照原Nginx编写方式, 添加访问文件 使用`alias `标记所访问文件夹路径,该位置需要写绝对路径 */
location /home/ {
alias /home/;
index index.html index.htm;
}
# 代理图片
location /image {
alias /home/service/uploadPath/;
autoindex on;
}
端口代理
server {
listen 8090;
server_name www.tengjiahui.work:8090;
location / {
root /home/web/digu;
index index.html;
}
}
重启Nginx /usr/local/nginx/sbin/nginx -s reload
SSL模块安装
查看 nginx
是否安装 http_ssl_module 模块
/usr/local/nginx/sbin/nginx -V
如果出现
configure arguments: –with-http_ssl_module
, 则已安装(下面的步骤可以跳过,进入nginx.conf
配置)。
配置 SSL 模块
cd nginx-1.8.1/
./configure --prefix=/usr/local/nginx --with-http_ssl_module
使用
make
命令编译(使用make install会重新安装nginx),此时当前目录会出现 objs 文件夹
用新的 nginx 文件覆盖当前的 nginx 文件
cp ./objs/nginx /usr/local/nginx/sbin/
再次查看安装的模块(configure arguments: –with-http_ssl_module说明ssl模块已安装)
/usr/local/nginx/sbin/nginx -V
编辑 /usr/local/nginx/conf/nginx.conf 配置文件
server {
# 服务器端口使用443,开启ssl, 这里ssl就是上面安装的ssl模块
listen 443 ssl;
# 域名,多个以空格分开
server_name xxx.com www.xxx.com;
# ssl证书地址
ssl_certificate xxx.crt; # pem文件的路径
ssl_certificate_key xxxx.key; # key文件的路径
# ssl验证相关配置
ssl_session_timeout 5m; #缓存有效期
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #加密算法
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #安全链接可选的加密协议
ssl_prefer_server_ciphers on; #使用服务器端的首选算法
location / {
root html;
index index.html index.htm;
}
}
将 http 重定向 https
server {
listen 80;
server_name xxx.com www.xxx.com;
return 301 https://$server_name$request_uri;
}
重启
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload
service nginx restart
service nginx stop
service nginx star