nginx服務(wù)特性:
1.支持高并發(fā),消耗資源少
2.功能較多(網(wǎng)站服務(wù),反向代理負載均衡,緩存功能)
3.使用比較好的網(wǎng)絡(luò)模型(epoll)
1.下載nginx
下載方式有四種,編譯安裝,yum安裝,rpm安裝,二進制包安裝方式(fpm,復(fù)雜度較高但比較靈活)在這使用yum安裝
yum安裝:
1.使用擴展epoll源,下載穩(wěn)定版.
準備系統(tǒng)環(huán)境,下載安裝gcc gcc-c++ autoconf yum-utils
rpm -qa gcc gcc-c++ autoconf yum-utils (檢查是否已經(jīng)安裝)
yum install gcc gcc-c++ autoconf yum-utils -y
2.配置yum擴展源
vim /etc/yum.repos.d/nginx.repo
3.將文件寫入
[nginx-stable]
name=nginx stable repo
baseurl=http:///packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https:///keys/nginx_signing.key
4.yum安裝nginx
yum install nginx
(檢查一下是否使用的擴展官方源:nginx-stable)
如果是就輸入y,如果不是清除一下yum緩存
yum clean all
2.nginx重要文件
查看所有文件
rpm -ql nginx
重要文件:
/etc/logrotate.d/nginx(nginx日志配置文件)
/var/run/nginx.pid(nginx主進程號)
nginx進程:
nginx: master 主進程
nginx: worker 工作進程
/etc/nginx/nginx.conf(nginx主配置文件)
/etc/nginx/conf.d(主配置文件調(diào)用的配置文件目錄)
/etc/nginx/mime.types(媒體資源庫)
/usr/share/nginx/html/(nginx站點目錄,存放網(wǎng)站資源)
/usr/share/nginx/html/index.html(nginx首頁文件)
3.nginx參數(shù)
-n 查看詳細參數(shù)
-v 查看版本信息
-V 查看版本信息和配置信息
-t 檢查配置文件語法是否正確
-T 檢查配置文件語法是否正確并且顯示所有配置文件
-s 啟動或者停止服務(wù)
4.檢查nginx
編寫主頁文件后可以使用瀏覽器打開進行查看
5.使用密碼登錄
server {
listen 80;
server_name www. ;
location / {
root /www;
index index.html;
autoindex on;
autoindex_exact_size off;
auth_basic “oldboy55 auth”;
auth_basic_user_file /etc/nginx/conf.d/passwd;
}
}
autoindex on;開啟用戶名認證功能
auth_basic_user_file /etc/nginx/conf.d/passwd;用戶名及密碼防止位置
修改文件權(quán)限
chmod 400 passwd
chown nginx.nginx passwd(修改的用戶應(yīng)該是管理nginx服務(wù)work進程的用戶)
制作密文密碼放在/etc/nginx/conf.d/passwd文件中
htpasswd -bc /etc/nginx/conf.d/passwd alex 123456
htpasswd功能源自httpd-tools-2.4.6-88.el7.centos.x86_64
6.listen監(jiān)聽端口
listen 8080;
訪問時加上端口:http://www.:8080
如果沒有加端口會默認尋找80端口,在里面找一個匹配的顯示第一個server
7.配置多個location時要有一個默認的 location/
8.nginx網(wǎng)站目錄索引功能autoindex on;
autoindec_exact_size off 將文件大小以更加方便讀的方式顯示
charset utf-8,gbk; 修改字符集支持中文顯示(寫進http進行全局使用)
9.sendfile on;是否實現(xiàn)高效傳輸
tcp_nopush off;方式一:節(jié)省數(shù)據(jù)包數(shù)量,盡量整合發(fā)送
tcp_nodelay on方;式二:一旦數(shù)據(jù)拆分結(jié)束就盡快傳輸
10.keeppalived_timeout 60;連接超時時間
在傳輸完畢后等待一定時間后斷開連接,如果設(shè)置為0就是短連接
11.
tcp長連接:一次連接可以發(fā)送多個請求
tcp短連接:一次連接只能發(fā)送一次請求
12.禁止訪問(按照IP劃分)
deny 10.0.0.1;禁止什么訪問
allow all;允許什么訪問
13.nginx網(wǎng)站服務(wù)訪問流量限制
基于用戶訪問連接數(shù)量進行限制 ngx_http_limit_conn_module
基于用戶訪問請求信息進行限制 ngx_http_limit_req_module
14.ab網(wǎng)站壓測命令
ab -c 10 -n 10 http:///oldboy01
15.autoinde on;開啟目錄索引功能(移除主語文件)
16. location = /nginx_status {
stub_status;
訪問www./nginx_status
打開網(wǎng)頁查看相關(guān)連接數(shù)
Active connections: 7 激活的連接數(shù),同一時刻有多少再連接
server accepts handled requests 接受的連接數(shù) 處理的連接數(shù) 完成的請求數(shù)
12 12 49
Reading: 0 Writing: 1 Waiting: 6 正在讀取的HTTP報文 正在傳輸?shù)腍TTP報文 延遲處理的數(shù)量
17.只允許內(nèi)網(wǎng)地址訪問禁止外網(wǎng)訪問
server {
listen 172.16.1.7:80;
server_name www. ;
只允許內(nèi)網(wǎng)地址訪問,不允許外網(wǎng)地址訪問
在nginx配置文件中設(shè)計地址服務(wù)必須重啟服務(wù),不能平滑重啟
18.網(wǎng)站web服務(wù)器的別名
server_name www. ;
既可以用www. 訪問,也能使用訪問
官方網(wǎng)站
http:///
|