侧边栏壁纸
  • 累计撰写 23 篇文章
  • 累计创建 7 个标签
  • 累计收到 0 条评论
标签搜索

目 录CONTENT

文章目录

CentOS配置离线Nginx

爱喝酸梅汤的小猫咪
2023-05-30 / 0 评论 / 0 点赞 / 458 阅读 / 693 字

CentOS配置离线Nginx

1.任务需求

使用nginx代理前端静态资源,以达到访问的目的,但服务器不可访问外网,只能内部开发,因此需要安装离线的nginx

2.下载必要文件

3.安装

  • 安装依赖
    目录:/root/nginx-install
    将依赖文件放到该目录
rpm -Uvh --force --nodeps ./gcc-c++/*.rpm 
rpm -Uvh --force --nodeps ./openssl/*.rpm
rpm -Uvh --force --nodeps ./pcre/*.rpm
rpm -Uvh --force --nodeps ./zlib/*.rpm
  • 安装nginx
解压nginx的文件
tar -zxvf 安装包名 

进行配置
1. ./configure --prefix=/data/nginx 
/data/nginx 为指定安装目录,也可以是
2. make
3. make install
4. 启动nginx: /usr/local/nginx/sbin/nginx
5. 验证是否安装  ps -ef|grep nginx

  • 配置多个nginx文件
    找到目录 /data/nginx/nginx.conf
http {
        ...
        include /data/nginx/conf.d/*.conf;
}
之后,所有的文件可以写到conf.d文件下
  • 使用的前端nginx配置
map $sent_http_content_type $expires {
  default                 off;
  text/html               -1;
  text/css                max;
  application/javascript  max;
  ~image/                 max;
}

server {
  listen       80;
  server_name  localhost;

  # 自定义过期时间,解决微信浏览器缓存问题
  expires $expires;

  # 开启 gzip on

  # gzip 预编译
  gzip_static on;

  gzip on;
  gzip_disable "msie6";

  gzip_vary on;
  gzip_proxied any;
  gzip_comp_level 6;
  gzip_buffers 16 8k;
  gzip_http_version 1.1;
  gzip_min_length 256;
  gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss application/javascript text/javascript application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon;

  #fix nginx头部没有token 是使用_导致的
  underscores_in_headers on;

    # location / {
    #     add_header Access-Control-Allow-Origin *;
    #     index  index.html index.htm;
    #     try_files $uri $uri/ /index.html;
    # }

    location / {
        add_header Access-Control-Allow-Origin *;
        alias /usr/share/nginx/html/;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html;
    }

  # 代理
#   location /my {
#       proxy_pass https://qingyulan.967111.net;
#   }

  error_page   500 502 503 504  /50x.html;
  location = /50x.html {
    root   /usr/share/nginx/html;
  }
}

  • 出现的问题
  1. bash: nginx: command not found
    解决:ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/

  2. ./nginx -s reload重新读取配置文件
    nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed
    解决:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

  3. nginx中配置gzip_static on提示nginx: [emerg] unknown directive “gzip_static“ in
    通过nginx配置开启解压缩静态文件gzip_static on后,启动nginx会提示nginx: [emerg] unknown directive “gzip_static” in,访问页面会发现有些js找不到,在目录下查找文件时发现是已gz结尾的,系统没有自动识别解压
    ./nginx -V 查看nginx信息,是否有配置–with-http_gzip_static_module
    解决:./configure --prefix=/data/nginx --with-http_gzip_static_module

  4. 出现已启动现象,就删除掉
    解决:ps -ef|grep nginx,并使用kill -quit xxxx

0
  • 0

评论区