Nginx 安装配置过程

Nginx 安装

系统平台:CentOS release 6.6 (Final) 64位。

一、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

二、首先要安装 PCRE

PCRE 作用是让 Nginx 支持 Rewrite 功能。

1、下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

[root@bogon src]# cd /usr/local/src/
[root@bogon src]# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

2、解压安装包:

[root@bogon src]# tar zxvf pcre-8.35.tar.gz

3、进入安装包目录

[root@bogon src]# cd pcre-8.35

4、编译安装

[root@bogon pcre-8.35]# ./configure
[root@bogon pcre-8.35]# make && make install

5、查看pcre版本

[root@bogon pcre-8.35]# pcre-config --version
安装 Nginx

1、下载 Nginx,下载地址:https://nginx.org/en/download.html

[root@bogon src]# cd /usr/local/src/
[root@bogon src]# wget https://nginx.org/download/nginx-1.18.0.tar.gz

2、解压安装包

[root@bogon src]# tar zxvf nginx-1.6.2.tar.gz

3、进入安装包目录

[root@bogon src]# cd nginx-1.6.2

4、编译安装

[root@bogon nginx-1.6.2]# ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35 --with-stream
[root@bogon nginx-1.6.2]# make
[root@bogon nginx-1.6.2]# make install

5、查看nginx版本

[root@bogon nginx-1.6.2]# /usr/local/webserver/nginx/sbin/nginx -v

到此,nginx安装完成。

Nginx 配置
创建 Nginx 运行使用的用户 www:

[root@bogon conf]# /usr/sbin/groupadd www 
[root@bogon conf]# /usr/sbin/useradd -g www www

配置nginx.conf ,将/usr/local/webserver/nginx/conf/nginx.conf替换为以下内容

[root@bogon conf]#  cat /usr/local/webserver/nginx/conf/nginx.conf
user www www;
worker_processes 2; #设置值和CPU核心数一致
error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日志位置和日志级别
pid /usr/local/webserver/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 65535;
events
{
  use epoll;
  worker_connections 65535;
}
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';
  
  #charset gb2312;
     
  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 8m;
     
  sendfile on;
  tcp_nopush on;
  keepalive_timeout 60;
  tcp_nodelay on;
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 64k;
  fastcgi_buffers 4 64k;
  fastcgi_busy_buffers_size 128k;
  fastcgi_temp_file_write_size 128k;
  gzip on; 
  gzip_min_length 1k;
  gzip_buffers 4 16k;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_types text/plain application/x-javascript text/css application/xml;
  gzip_vary on;
 
  #limit_zone crawler $binary_remote_addr 10m;
 #下面是server虚拟主机的配置
 server
  {
    listen 81;#监听端口
    server_name _;#域名
    index index.html index.htm index.php;
    root /usr/local/webserver/nginx/html;#站点目录
      location ~ .*\.(php|php5)?$
    {
      #fastcgi_pass unix:/tmp/php-cgi.sock;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      include fastcgi.conf;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$
    {
      expires 30d;
  # access_log off;
    }
    location ~ .*\.(js|css)?$
    {
      expires 15d;
   # access_log off;
    }
    access_log off;
  }

  #前端部署
  server{
      listen       8089;
      charset UTF-8;
      location /api/ {
                    proxy_pass http://10.0.0.224:9100/;
                    proxy_set_header              Host $host;
                    proxy_set_header              X-Real-IP $remote_addr;
                    proxy_set_header              X-Forwarded-For $proxy_add_x_forwarded_for;
                    client_max_body_size          500m;                   ## 设置客户端请求body的最大允许大小
                    client_body_buffer_size       256k;                   ## 设置客户端请求body的缓冲区大小
                    proxy_connect_timeout         90;                             ## 与后端服务器连接的超时时长
                    proxy_send_timeout            90;                             ## 把请求发送给后端服务器的超时时长
                    proxy_read_timeout            90;                             ## 等待后端服务器发送响应报文的超时时长
                    proxy_buffer_size             128k;                   ## 从代理服务器接收的响应的第一部分缓冲区
                    proxy_buffers                 4 64k;                  ## 从代理服务器读取响应的缓冲区number和size
                    proxy_busy_buffers_size       128k;                   ## 限制size在响应尚未完全读取时可能忙于向客户端发送响应的缓冲区总数
                    proxy_temp_file_write_size    128k;                   ## 该指令设置缓冲临时文件的最大值
      }

      location / {
          alias /usr/local/webserver/nginx/html/build/;
          index index.html index.htm;
          try_files $uri $uri/ /usr/local/webserver/nginx/html/build/index.html;
          #add_header wangmutian;
      }

     
  }

}

检查配置文件nginx.conf的正确性命令:

[root@bogon conf]# /usr/local/webserver/nginx/sbin/nginx -t

启动 Nginx
Nginx 启动命令如下:

[root@bogon conf]# /usr/local/webserver/nginx/sbin/nginx

访问站点
从浏览器访问我们配置的站点ip:

Nginx 其他命令
以下包含了 Nginx 常用的几个命令:

/usr/local/webserver/nginx/sbin/nginx -s reload            # 重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen            # 重启 Nginx
/usr/local/webserver/nginx/sbin/nginx -s stop              # 停止 Nginx

H

配置systemctl之后的启动方式

systemctl status nginx

systemctl start nginx

systemctl stop nginx

systemctl restart nginx
创建一个nginx.service

在 /usr/lib/systemd/system/目录下面新建一个nginx.service文件。并赋予可执行的权限
vim /usr/lib/systemd/system/nginx.service
chmod +x /usr/lib/systemd/system/nginx.service

配置方法
[Unit]                                                                                      //对服务的说明
Description=nginx - high performance web server              //描述服务
After=network.target remote-fs.target nss-lookup.target   //描述服务类别

[Service]                                                                                 //服务的一些具体运行参数的设置
Type=forking                                                                         //后台运行的形式
PIDFile=/usr/local/webserver/nginx/logs/nginx.pid                               //PID文件的路径
ExecStartPre=/usr/local/webserver/nginx/sbin/nginx -t -c /usr/local/webserver/nginx/conf/nginx.conf   //启动准备
ExecStart=/usr/local/webserver/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf           //启动命令
ExecReload=/usr/local/webserver/nginx/sbin/nginx -s reload                                                 //重启命令
ExecStop=/usr/local/webserver/nginx/sbin/nginx -s stop                                                       //停止命令
ExecQuit=/usr/local/webserver/nginx/sbin/nginx -s quit                                                        //快速停止
PrivateTmp=true                                                                  //给服务分配临时空间

[Install]
WantedBy=multi-user.target                                               //服务用户的模式


启动服务

在启动服务之前,需要先重载systemctl命令
systemctl daemon-reload
systemctl start nginx.service

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值