Linux Centos 7 安装配置nginx

参考:https://www.cnblogs.com/boonya/p/7907999.html

环境准备:

1.安装gcc编译器

# yum install -y gcc

2.安装 pcre pcre-devel

# yum install -y pcre pcre-devel

3.安装zlib

# yum install -y zlib zlib-devel

4.安装openssl

# yum install -y openssl openssl-devel

5. 下载nginx源码包

# wget https://nginx.org/download/nginx-1.15.6.tar.gz

6. 解压

# tar -zxvf nginx-1.15.6.tar.gz 

# cd nginx-1.15.6

7.配置安装

# mkdir -p /app/nginx

# mkdir -p /var/temp/nginx/

# mkdir -p /var/cache/nginx/cache

# ./configure \

--prefix=/app/nginx \
--conf-path=/app/nginx/conf/nginx.conf \
--pid-path=/app/nginx/conf/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_stub_status_module \
--with-http_gzip_static_module \
--with-http_realip_module \
--with-http_sub_module \
--with-http_ssl_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

# make && make install 

安装完成

修改配置文件

#vim /app/nginx/conf/nginx.conf

user root root;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
worker_rlimit_nofile 65535;

events {
  worker_connections 65535;
  multi_accept on;
  use epoll;
}

http {
  include mime.types;
  default_type application/octet-stream;
  server_tokens off;
  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 20m;
  sendfile on;
  tcp_nopush on;
  tcp_nodelay on;
  keepalive_timeout 30;

  log_format main "[$time_local] - " "$request - " "$status - " "$request_time - " "$body_bytes_sent - " "$http_referer - " "$sent_http_location - " "$http_user_agent - " "$remote_addr - " "$http_x_forwarded_for - " "$upstream_addr - " "$upstream_status - " "$upstream_response_time - ";
  access_log /var/log/nginx/access.log main;

  gzip on;
  gzip_comp_level 2;
  gzip_http_version 1.1;
  gzip_types text/plain application/x-javascript text/css application/xml text/javascript;
  gzip_proxied any;
  gzip_vary on;

  #如果主机内存空间不大,请调整红色的值

  proxy_cache_path /var/cache/nginx/cache levels=1:2 keys_zone=tmp_cache:1024m inactive=20m max_size=1024m;

  add_header X-Frame-Options SAMEORIGIN;
  proxy_next_upstream error timeout;
  proxy_redirect off;
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_connect_timeout 180;
  proxy_send_timeout 180;
  proxy_read_timeout 180;
  proxy_buffer_size 8k;
  proxy_buffers 8 64k;
  proxy_busy_buffers_size 128k;
  proxy_temp_file_write_size 128k;

  include /app/nginx/conf/conf.d/*.conf;
}

# mkdir -p /app/nginx/conf/conf.d/

具体的应用请在/app/nginx/conf/conf.d/下添加配置文件配置:

例如图片服务器:

# vim /app/nginx/conf/conf.d/example-pic.conf 

server {
  listen 8080;
  server_name *.example.com 192.168.11.11;
  access_log /var/log/nginx/example-pic.access.log main;
  error_log /var/log/nginx/example-pic.error.log;

  location ^~ /pic {
    expires 24h;
    alias /app/static/images;
    proxy_store on;
    proxy_store_access user:rw group:rw all:rw;
    proxy_temp_path /app/static/temp/;
    proxy_redirect off;
    proxy_set_header Host 127.0.0.1;
    client_max_body_size 10m;
    client_body_buffer_size 1280k;
    proxy_connect_timeout 900;
    proxy_send_timeout 900;
    proxy_read_timeout 900;
    proxy_buffer_size 40k;
    proxy_buffers 40 320k;
    proxy_busy_buffers_size 640k;
    proxy_temp_file_write_size 640k;
    if ( !-e $request_filename)
    {
      proxy_pass http://192.168.11.11;
    }
  }
}

# /app/nginx/sbin/nginx   (运行程序,启动服务)

# ln -s /app/nginx/sbin/nginx /bin/nginx

# nginx -t   (检测配置文件是否存在错误)

#nginx -s reload   (新增服务代理后重新加载配置文件)

# nginx stop (或 kill 进程终止服务)

posted on 2018-11-26 15:22  **小君哥**  阅读(126)  评论(0编辑  收藏  举报

导航