Nginx Server

服务器

浏览数:92

2019-10-16

AD:资源代下载服务

Nginx WEB Server

戳我Nginxj介绍

Nginx知名的优点就是它的稳定性和低系统资源消耗,高效处理并发量,单台物理服务器可支持30000~50000个并发请求
目前最新Nginx版本1.13.5

1、配置IP地址
(略)

[root@localhost nginx-1.6.0]# rpm -e httpd --nodeps 

2、编译安装Nginx源码包下载

[root@localhost ~]# yum -y install pcre-devel zlib-devel  依赖包
[root@localhost ~]# useradd -M -s /sbin/nologin nginx 
[root@localhost ~]# tar -zxvf nginx-1.6.0.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/nginx-1.6.0/
[root@localhost nginx-1.6.0]# ./configure --prefix=/usr/local/nginx --user=nginx 
 --group=nginx --with-http_stub_status_module(状态统计模块)
[root@localhost nginx-1.6.0]# make && make install
[root@localhost ~]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/  路径优化  
[root@localhost ~]# nginx -t 检测语法
[root@localhost ~]# nginx     开启
[root@localhost ~]# netstat -anpt | grep ngin 状态 

3、验证:

[root@localhost ~]# firefox http://localhost/ 

4、nginx服务的控制

[root@localhost ~]# killall -s HUP nginx 重载
[root@localhost ~]# killall -s QUIT nginx 停止 
[root@localhost ~]# nginx  启动服务

5、创建nginx服务启动脚本(需要就创建)

[root@localhost ~]# vim /etc/init.d/nginx
添加:
#!/bin/bash
#### nginx server####
# chkconfig: 235 25 20
# description: this is nginx server
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|status}" exit 1

;;
esac exit 0

[root@localhost ~]# chmod +x    /etc/init.d/nginx 
[root@localhost ~]# service nginx stop
[root@localhost ~]# service nginx start 
[root@localhost ~]# netstat -anpt | grep 80 
[root@localhost ~]# chkconfig --add nginx
[root@localhost ~]# chkconfig nginx on

6、常用命令

nginx –v 查看版本    nginx –V 查看详细  nginx –t 检查语法配置文件

nginx 只有一个主进程  可以有多个工作进程

7、主配置文件

Nginx主配置文件/usr/local/nginx/conf/nginx.conf
全局配置
user  nginx;   运行用户
worker_processes  2; 工作进程数量   根据cup个数去设定,也可以写CPU核心数
#error_log  logs/error.log; 错误日志文件的位置
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid; Pid文件的位置
I/O事件配置
events {
#use epoll; 建议使用epoll模型以提高性能  进程数默认1024  一般1000以下   按照自己需求来定
worker_connections  10240;   每进程处理10240个
}
HTTP配置
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 {     Web服务的监听配置
    listen       80; 监听端口
    server_name  localhost; FQDN网站名称
    charset utf8;  网页的默认字符集
    #access_log  logs/host.access.log  main;
    location / {  根目录配置
root   html;   网站根目录的位置
        index  index.html index.htm; 默认首页(索引页)
    }
#location /status {  访问位置为status打开统计功能

      #       stub_status on;
      #       }
    }
}

虚拟机主机应用

基于域名的虚拟web主机        验证的话需要搭建DNS   我在这里用hosts文件记录代替了

 [root@localhost ~]# vim /etc/hosts
添加:
 192.168.1.1    www.benet.com
 192.168.1.1    www.accp.com 

[root@localhost ~]# mkdir -p /www/benet 
[root@localhost ~]# mkdir -p /www/accp
[root@localhost ~]# echo "hello  benet" > /www/benet/index.html 
[root@localhost ~]# echo "hello  accp" > /www/accp/index.html 


 Server {
 listen 80;   
 server_name  www.benet.com;
    charset utf8;
    access_log  logs/benet.benet.log  main;
    location / {
 root   /var/www/benet;
        index  index.html index.htm;
    }
}

Server {
listen 80;  
server_name  www.accp.com;
    charset utf8;
    access_log  logs/accp.accp.log  main;
    location / {
root   /var/www/accp;
        index  index.html index.htm;
    }
}

作者:麦子先生R