linux上nginx安裝部署使用詳解

2021-09-29 17:09:28 字數 3496 閱讀 8295

在linux下安裝需要安裝一下元件

1. gcc && g++

yum install gcc-c++

2. pcre

yum install -y pcre pcre-devel

3. zlib

yum install -y zlib zlib-devel

4. openssl

yum install -y openssl openssl-devel

1. 解壓nginx檔案

tar -zxvf nginx-1.17.5.tar.gz

2. 安裝

## 建立乙個nginx安裝目錄

mkdir nginx

cd nginx-1.12.2

## 指定檔案安裝路徑

./configure --prefix=/home/lege/nginx

make

make install

#安裝完成後內容會安裝到指定的路徑 /home/lege/nginx下,否則會在預設目錄/usr/local/nginx

## 修改配置檔案

cd /home/lege/nginx/conf

vim nginx.conf

## 設定埠為8080,也可設定成其他

listen 8080;

## 進入到啟動目錄

cd /home/lege/nginx/sbin

## 檢查配置檔案是否有問題

./nginx -t

##沒有問題的結果如下所示:

[soa@testsoa04 sbin]$ ./nginx -t

nginx: the configuration file /home/lege/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /home/lege/nginx/conf/nginx.conf test is successful

[soa@testsoa04 sbin]$

## 查詢配置引數

./nginx -v

## 對於已安裝的nginx需要修改配置引數

./configure --prefix=/home/lege/nginx ...配置引數

make

make install

然後重新啟動nginx即可

## 啟動

./nginx

## 停止

./nginx -s stop

## 重啟

./nginx -s reload

## 輸入**驗證是否啟動成功

日誌定義的格式:

語法格式: access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=condition]];

access_log off;

預設值 : access_log logs/access.log combined;

作用域 : http, server, location, if in location, limit_except

1. 定義日誌格式

語法格式: log_format name [escape=default|json] string ...;

預設值 : log_format combined "...";

作用域 : http

常見的日誌變數

$remote_addr, $http_x_forwarded_for 記錄客戶端ip位址

$remote_user記錄客戶端使用者名稱

$request記錄請求的url和http協議(get,post,del,等)

$status記錄請求狀態

$body_bytes_sent傳送給客戶端的位元組數,不包括響應頭的大小; 該變數與apache模組mod_log_config裡的「%b」引數相容。

$bytes_sent傳送給客戶端的總位元組數。

$connection連線的序列號。

$connection_requests 當前通過乙個連線獲得的請求數量。

$msec 日誌寫入時間。單位為秒,精度是毫秒。

$pipe如果請求是通過http流水線(pipelined)傳送,pipe值為「p」,否則為「.」。

$http_referer 記錄從哪個頁面鏈結訪問過來的

$http_user_agent記錄客戶端瀏覽器相關資訊

$request_length請求的長度(包括請求行,請求頭和請求正文)。

$request_time 請求處理時間,單位為秒,精度毫秒; 從讀入客戶端的第乙個位元組開始,直到把最後乙個字元傳送給客戶端後進行日誌寫入為止。

$time_iso8601 iso8601標準格式下的本地時間。

$time_local通用日誌格式下的本地時間。

示例:log_format main '$remote_addr - $remote_user [$time_local] "$request" '

clear.sh指令碼如下:

#!/bin/bash

#logs_path為日誌存放路徑

logs_path=/home/lege/data/nginx/logs

yesterday=$(date -d "yesterday" +%y-%m-%d)

keeptime=$(date -d "-3 days" +%y-%m-%d)

#切分日誌檔案

mv $/access.log $/access_$.log

mv $/error.log $/error_$.log

#通過nginx訊號量控制重讀日誌,/web/nginx/為nginx安裝目錄

kill -usr1 $(cat /home/lege/data/nginx/logs/nginx.pid)

#刪除3天前的日誌檔案

rm -f $/access_.log

rm -f $/error_.log

echo 0

crontab -e 新增如下:

0 0 * * * /bin/sh /home/lege/data/nginx/logs/clear.sh

crontab -l 檢視是否新增成功

linux上安裝nginx及部署

5 nginx conf nginx.conf 修改埠80及其他配置 也可不改 6 yum install gcc c 7 yum y install zlib zlib devel openssl openssl devel pcre pcre devel 安裝nginx之前,首先確保系統已經安裝...

azure 雲上安裝部署nginx

wget 2.解壓libevent tar zxvpf libevent 2.0.21 stable.tar.gz 3.進入解壓目錄 cd libevent 2.0.21 stable 4.指定安裝目錄 configure prefix usr local libevent 2.0.21 5.安裝l...

azure 雲上安裝部署nginx

在安裝nginx之前可以先安裝libevent,安裝libevent步驟如下 wget 2.解壓libevent tar zxvpf libevent 2.0.21 stable.tar.gz 3.進入解壓目錄 cd libevent 2.0.21 stable 4.指定安裝目錄 configure...