日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

      歡迎訪問 生活随笔!

      生活随笔

      當前位置: 首頁 > 运维知识 > Nginx >内容正文

      Nginx

      Nginx服务基础

      發布時間:2023/12/10 Nginx 99 豆豆
      生活随笔 收集整理的這篇文章主要介紹了 Nginx服务基础 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

        Nginx的英文官方網站是http://nginx.org,在這里可以查看Nginx的各個軟件版本信息。Nginx軟件有三種版本:穩定版、開發版和歷史穩定版。開發版更新較快,包含最新的功能和bug的修復,但同時也可能會遇到新的bug,開發版的更新一旦穩定下來,就會被納入穩定版中。但是,有些新功能不會被加入到舊的穩定版中去。穩定版本的更新較慢,但是軟件bug也會較少,可以作為企業生產環境的首選,因此通常建議選擇使用穩定版。當然,在實際工作中,選擇穩定版時,盡量避免使用最新的版本,選擇比已出來的最新版晚6~10個月的版本比較好。

      1. 安裝Nginx所需的依賴包。

      分別是pcre-devel、openssl-devel包

      pcre庫是為了使Nginx支持具備URI重寫功能的rewrite模塊,如果不安裝pcre庫,則Nginx無法使用rewrite模塊功能,Nginx的rewrite模塊功能幾乎是企業應用必須的。

      openssl是Nginx在使用HTTPS服務的時候要用到此模塊,如果不安裝openssl,安裝Nginx的過程中會報錯。

      # 安裝方式

      yum install pcre pcre-devel -y yum install openssl openssl-devel -y

      # 檢查安裝結果

      rpm -qa pcre pcre-devel rpm -qa openssl openssl-devel

      2. 開始安裝。

      操作命令如下:

      [root@120_234_2_74_centos7 ~]# cd /tools/ [root@120_234_2_74_centos7 tools]# wget -q http://nginx.org/download/nginx-1.12.1.tar.gz [root@120_234_2_74_centos7 tools]# useradd nginx -s /sbin/nologin -M [root@120_234_2_74_centos7 tools]# tar xf nginx-1.12.1.tar.gz [root@120_234_2_74_centos7 tools]# cd nginx-1.12.1/ [root@120_234_2_74_centos7 nginx-1.12.1]# ./configure --user=nginx --group=nginx --prefix=/app/nginx-1.12.1/ --with-http_stub_status_module --with-http_ssl_module [root@120_234_2_74_centos7 nginx-1.12.1]# make && make install

      # 講Nginx安裝路徑通過軟連接的方式更改為/app/nginx/, 方便人員使用。安裝時制定版本號路徑是為了便于查看區分當前使用的Nginx版本,也方便以后升級。

      [root@120_234_2_74_centos7 nginx-1.12.1]# ln -sv /app/nginx-1.12.1/ /app/nginx

      3.?啟動并檢查安裝結果。

      (1)啟動前檢查配置文件語法

      [root@120_234_2_74_centos7 tools]# /app/nginx/sbin/nginx -t nginx: the configuration file /app/nginx-1.12.1//conf/nginx.conf syntax is ok nginx: configuration file /app/nginx-1.12.1//conf/nginx.conf test is successful

      (2)啟動Nginx服務

      [root@120_234_2_74_centos7 tools]# /app/nginx/sbin/nginx

      (3)查看Nginx服務對應的端口是否成功啟動

      [root@120_234_2_74_centos7 tools]# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 6256 root 6u IPv4 21943 0t0 TCP *:http (LISTEN) nginx 6257 nginx 6u IPv4 21943 0t0 TCP *:http (LISTEN)

      也可以通過ss -lnt | grep 80查看:

      [root@120_234_2_74_centos7 tools]# ss -lnt | grep 80 LISTEN 0 128 *:80 *:*

      (4)檢查Nginx啟動的實際效果

      打開瀏覽器輸入http://x.x.x.x,然后回車,如看到如圖的內容,就表示Nginx已經啟動了。

      ?注意,nginx -s reload 原理:

        新的請求會放到新的工作線程上。
      舊的請求會一直處理,直到結束完舊的任務。

      ?4.Nginx日志切割

      Nginx 是一個非常輕量的 Web 服務器,體積小、性能高、速度快等諸多優點。但不足的是也存在缺點,比如其產生的訪問日志文件一直就是一個,不會自動地進行切割,如果訪問量很大的話,將導致日志文件容量非常大,不便于管理。

      腳本內容:

      #/bin/bash #-----------desc----------------------- # desc : nginx cut log # create : 2017-11-21 # update : 2017-11-21 # version: 1.0.0 # author : luchuangao #-----------desc-----------------------# 設置日志文件存放目錄 logs_path=/usr/local/nginx/logs/# 設置pid文件 pid_path=/usr/local/nginx/logs/nginx.pid# 重命名日志文件 mv ${logs_path}access.log ${logs_path}access_$(date -d yesterday +%Y%m%d).log mv ${logs_path}error.log ${logs_path}error_$(date -d yesterday +%Y%m%d).log# 向nginx主進程發信號重新打開日志 kill -USR1 `cat ${pid_path}`

      其他操作:

      # 添加計劃任務 crontab -e # nginx cut log 0 0 * * * /bin/bash /shell/nginx/nginx-cut-log.sh# 重啟crond任務 systemctl restart crond

      5. 添加代理認證

      yum install httpd-tools -y #第一次需要加-c htpasswd -bc /usr/local/nginx/conf/htpasswd.users luchuangao 123456 #第二次需要把-c去掉,否則會覆蓋原有得。 htpasswd -b /usr/local/nginx/conf/htpasswd.users luchuangao 123456 #查看tail /usr/local/nginx/conf/htpasswd.users #... #授權 chown nginx.nginx /usr/local/nginx/conf/htpasswd.users #重啟服務 /usr/local/nginx/sbin/nginx -s reload添加進nginx配置文件: vim /usr/local/nginx/conf/conf.d/kibana5612.conf upstream kibana_server {server 127.0.0.1:5601 weight=1 max_fails=3 fail_timeout=60; }server {listen 80;server_name www.kibana5611.com;auth_basic "Restricted Access";auth_basic_user_file /usr/local/nginx/conf/htpasswd.users;location /{proxy_pass http://kibana_server;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection 'upgrade';proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;} }

      一鍵安裝

      yum install pcre pcre-devel -y yum install openssl openssl-devel -y cd /usr/local/src/ wget -q http://nginx.org/download/nginx-1.12.1.tar.gz useradd nginx -s /sbin/nologin -M tar xf nginx-1.12.1.tar.gz cd nginx-1.12.1/ ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx-1.12.1/ --with-http_stub_status_module --with-http_ssl_module make && make install ln -sv /usr/local/nginx-1.12.1 /usr/local/nginx /usr/local/nginx/sbin/nginx -t

      ?

      啟動腳本

      vim /etc/init.d/nginx#!/bin/bash # chkconfig: - 85 15 PATH=/usr/local/nginx DESC="nginx daemon" NAME=nginx DAEMON=$PATH/sbin/$NAME CONFIGFILE=$PATH/conf/$NAME.conf PIDFILE=$PATH/logs/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME set -e [ -x "$DAEMON" ] || exit 0 do_start() { $DAEMON -c $CONFIGFILE || echo -n "nginx already running" } do_stop() { $DAEMON -s stop || echo -n "nginx not running" } do_reload() { $DAEMON -s reload || echo -n "nginx can't reload" } case "$1" in start) echo -n "Starting $DESC: $NAME" do_start echo "." ;; stop) echo -n "Stopping $DESC: $NAME" do_stop echo "." ;; reload|graceful) echo -n "Reloading $DESC configuration..." do_reload echo "." ;; restart) echo -n "Restarting $DESC: $NAME" do_stop do_start echo "." ;; *) echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2 exit 3 ;; esac exit 0

      操作命令:

      #設置執行權限 chmod a+x /etc/init.d/nginx#注冊成服務 chkconfig --add nginx#設置開機啟動 chkconfig nginx on#重啟, 查看nginx服務是否自動啟動 shutdown -h 0 -r netstat -apn|grep nginx #對nginx服務執行停止/啟動/重新讀取配置文件操作#啟動nginx服務 systemctl start nginx.service #停止nginx服務 systemctl stop nginx.service #重啟nginx服務 systemctl restart nginx.service #重新讀取nginx配置(這個最常用, 不用停止nginx服務就能使修改的配置生效) systemctl reload nginx.service

      nginx 80端口重定向到443端口

      https://blog.csdn.net/m0_37886429/article/details/72271983

      ?

      轉載于:https://www.cnblogs.com/luchuangao/p/7824950.html

      總結

      以上是生活随笔為你收集整理的Nginx服务基础的全部內容,希望文章能夠幫你解決所遇到的問題。

      如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。