Nginx安装部署!
安装Nginx方法一:利用u盘导入Nginx软件包
二nginx -t 用于检测配置文件语法
如下报错1:配置文件43行出现错误
[root@www ~]# nginx -t
nginx: [emerg] "location" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:43
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
如下错误2:worker里面工作区出现问题
[root@www ~]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: [warn] 10240 worker_connections exceed open file resource limit: 1024
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
解决办法:
[root@www ~]# ulimit -n 10240
main(全局设置)、server(主机设置)、upstream(负载均衡服务器设置)和 location(URL匹配特定位置的设置)。 main块设置的指令将影响其他所有设置;
server块的指令主要用于指定主机和端口;
upstream指令主要用于负载均衡,设置一系列的后端服务器;
location块用于匹配网页位置。
=============================================================
创建单个基于域名的虚拟主机并测试
[root@localhost ~]# rpm -q httpd //有httpd软件必须删除
未安装软件包 httpd
安装支持软件
[root@localhost ~]# rpm -q gcc gcc-c++ zlib-devel pcre-devel make
[root@localhost ~]# yum -y install gcc gcc-c++ zlib-devel pcre-devel make
完毕!
创建运行用户、组
[root@localhost ~]# useradd -M -s /sbin/nologin nginx
[root@localhost ~]# tail -l /etc/passwd ;tail -l /etc/group
导入nginx软件包
[root@localhost ~]# rz -E
rz waiting to receive.
[root@localhost ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg nginx-1.16.0.tar.gz original-ks.cfg
[root@localhost ~]# tar xf nginx-1.16.0.tar.gz -C /usr/src
[root@localhost ~]# cd /usr/src/nginx-1.16.0/
编译安装 Nginx
[root@localhost nginx-1.16.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-stream --with-http_gzip_static_module && make && make install
--prefix 设定Nginx的安装目录
--user和--group 指定Nginx运行用户和组
--with-http_stub_status_module 启用http_stub_status_module模块以支持状态统计
--with-http_ssl_module 启用SSL模块
--with-http_flv_module 启用FLV模块,提供寻求内存使用基于时间的偏移量文件
--with-stream 用于做七层,四层负载的模块
[root@localhost nginx-1.16.0]# cd
为主程序 nginx 创建链接文件
[root@localhost ~]# ls /usr/local/nginx/
conf html logs sbin
[root@localhost ~]#ln -sf /usr/local/nginx/sbin/nginx /usr/local/sbin/
[root@localhost ~]# ll /usr/local/sbin/nginx
lrwxrwxrwx. 1 root root 27 9月 10 17:12 /usr/local/sbin/nginx -> /usr/local/nginx/sbin/nginx
Nginx 的运行控制方法
手动方法控制 Nginx:
nginx -t 检测配置文件语法
执行 nginx 主程序启动 Nginx
编写 nginx 服务脚本
[root@localhost ~]# vim /etc/init.d/nginx
#!/bin/bash
# chkconfig: 2345 99 20
# description: Nginx Server Control Scripts shell
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
$PROG
;;
stop)
kill -s QUIT $(cat $PIDF)
;;
restart)
$0 stop
$0 start
;;
reload)
kill -s HUP $(cat $PIDF)
;;
*)
echo "Usage: $0 {start|stop|restart|reload}"
exit 1
esac
exit 0
[root@localhost ~]# chmod +x /etc/init.d/nginx
Nginx 修改主配置文件
[root@localhost ~]# cd /usr/local/nginx/conf/
[root@localhost conf]# cp nginx.conf nginx.conf.origin
[root@localhost conf]# vim nginx.conf
user nginx nginx; //nginx的程序账户及程序组
worker_processes ; //指定进程数一般与cpu数量一致
worker_cpu_affinity ; //为每个进程分配核心数
error_log logs/error.log info; //全局错误日志文件位置
pid logs/nginx.pid; //PID文件的位置
events {
use epoll; //使用epoll模型
worker_connections ; //每个进程允许的最多的连接数默认为1024一般10000以下
}
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; //支持文件发送超时
keepalive_timeout ;
server { //web服务的监听配置
listen ; //监听地址及端口(IP:PORT)
server_name localhost; //网站名称(FQDN)
charset utf-; //网页的默认字符集
access_log logs/localhost.access.log main;
location / { //根目录配置
root html; //网站根目录的位置安装位置的html中
index index.html index.htm; //默认首页
}
error_page 500 502 503 504 /50x.html; //内部错误的反馈页面
location =/50x.html { //错误页面配置
root html;
}
}
}
[root@localhost ~]# nginx -t //检测语法错误
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost ~]# nginx //启动nginx服务
[root@localhost ~]# killall -HUP nginx
[root@localhost ~]# netstat -anpt | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 64726/nginx: master
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce 0
nginx安装完成
安装Nginx方法二:
从官网下载相应的源码包:
Nginx下载地址:http://nginx.org/en/download.html
[root@localhost ~]#wget http:;//nginx.org/download/nginx-1.14.2.tar.gz
[root@localhost ~]#tar xf nginx-1.14.2.tar.gz -C /usr/src
[root@localhost ~]#cd /usr/src/nginx-1.14.2
[root@localhost nginx-1.14.2]#yum install gcc gcc-c++ make zlib-devel pcre-devel -y
[root@localhost nginx-1.16.0]#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
&& make && make install
[root@localhost nginx-1.17.4]# cd /usr/share/vim/vimfiles/ //拷入相应的语法
[root@localhost ~]# cd /usr/local/nginx/conf/
[root@localhost conf]# vim nginx.conf
user nginx nginx; //nginx的程序账户及程序组
worker_processes ; //指定进程数一般与cpu数量一致
worker_cpu_affinity ; //为每个进程分配核心数
error_log logs/error.log info; //全局错误日志文件位置
pid logs/nginx.pid; //PID文件的位置
events {
use epoll; //使用epoll模型
worker_connections ; //每个进程允许的最多的连接数默认为1024一般10000以下
}
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; //支持文件发送超时
keepalive_timeout ;
server { //web服务的监听配置
listen ; //监听地址及端口(IP:PORT)
server_name localhost; //网站名称(FQDN)
charset utf-; //网页的默认字符集
access_log logs/localhost.access.log main;
location / { //根目录配置
root html; //网站根目录的位置安装位置的html中
index index.html index.htm; //默认首页
} error_page /50x.html; //内部错误的反馈页面
location =/50x.html { //错误页面配置
root html;
}
}
}
Nginx安装部署!的更多相关文章
- Nginx安装部署与测试
场景:项目需要部署在生产环境中,这些新的工具都需要在生产环境中去实践练习.有时间再部署一套ELK的日志分析系统,这样的系统才算具有一定的应用价值. 1 Nginx安装 用root用户安装,采用源代码编 ...
- nginx安装部署(支持https)
1 安装环境准备 1.1 准备环境清单 以下是基本环境清单列表: 软件名称 版本号 说明信息 Linux CentOS 6.7 部署机器只需为Linux系统即可,无严格要求 1.2 ...
- 云服务器内,nginx安装部署,Xshell,Xftp安装
nginx部署 三丰云云服务器,安装nginx nginx部署 在宝塔面板,添加Nginx安装,一般进来会默认推荐安装几款软件,mysql等,暂时可以后面再装,先把nginx装上去,去感受将前端页面放 ...
- Nginx安装部署
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev ...
- Nginx安装部署以及配置文件解析
Nginx 中的 Location 指令 是NginxHttpCoreModule中重要指令.Location 指令,是用来为匹配的 URI 进行配置,URI 即语法中的”/uri/”,可以是字符串或 ...
- linux centos7 nginx 安装部署和配置
1/什么是NginxNginx("enginex")是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器,在高连接并发的情况下Nginx是Apac ...
- Linux中Nginx安装部署
前言 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sys ...
- Centos 6.5 下Nginx安装部署https服务器
一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩.1.选定源码目录选定目录 /usr/local/cd /usr/local/2.安装PCRE库cd /usr/ ...
- nginx安装部署+增加媒体播放模块
nginx安装很简单,但是有的时候是已经安装的nginx ,升级增加nginx 模块功能. 最近公司要nginx增加一个可以播放 MP4的模块,安装还算顺利,不说废话上命令. 1 安装依赖 yum i ...
随机推荐
- C#中数据类型char*,const char*和string的三者转换
C#中数据类型char*,const char*和string的三者转换: . const char* 和string 转换 () const char*转换为 string,直接赋值即可. EX: ...
- bistoury建库建表(一)
bistoury DROP TABLE IF EXISTS bistoury_app; CREATE TABLE bistoury_app( id INT UNSIGNED auto_incremen ...
- python 常用包之xml文件处理
1,处理xml的包 from xml.etree import ElementTree as ET 2,如何写出xml文件 xml文件和html中的元素很像,有父级子集之说, root = ET.El ...
- python开发基础03-列表、元组、字典、集合操作方法汇总
列表 创建列表: li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], ...
- 树链剖分-Hello!链剖-[NOIP2015]运输计划-[填坑]
This article is made by Jason-Cow.Welcome to reprint.But please post the writer's address. http://ww ...
- Windows10_64位下upload-labs靶场搭建+phpstudy_v8.1安装教程
之前介绍了Windows10_64位搭建WampServer的教程,这一次再来水一篇phpstudy的搭建教程.哈哈哈. 顺便安装一下upload-labs,搭着玩玩~ 操作 ...
- AcWing 849. Dijkstra求最短路 I 朴素 邻接矩阵 稠密图
//朴素Dijkstra 边权都是正数 稠密图:点和边差的比较多 #include<cstring> #include<iostream> #include<algori ...
- Servlet获取配置信息(ServletConfig)
ServletConfig ServletConfig:当Servlet容器初始化Servlet时,Servlet容器会给Servlet的init方法传入一个ServletConfig.Servlet ...
- html 打印相关操作与实现
2020-02-19 | chrome 79.0.3945.130 测试无问题 未做兼容测试 原理为调用 window.print() 方法,但是该方法只能对当前页面全部打印,所以有了以下方案来解决局 ...
- Vue基础笔记3
插槽指令 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <titl ...