nginx服務特性:
1.支持高并發(fā),消耗資源少
2.功能較多(網站服務,反向代理負載均衡,緩存功能)
3.使用比較好的網絡模型(epoll)
1.下載nginx
下載方式有四種,編譯安裝,yum安裝,rpm安裝,二進制包安裝方式(fpm,復雜度較高但比較靈活)在這使用yum安裝
yum安裝:
1.使用擴展epoll源,下載穩(wěn)定版.
準備系統環(huán)境,下載安裝gcc gcc-c++ autoconf yum-utils
rpm -qa gcc gcc-c++ autoconf yum-utils (檢查是否已經安裝)
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(主配置文件調用的配置文件目錄)
/etc/nginx/mime.types(媒體資源庫)
/usr/share/nginx/html/(nginx站點目錄,存放網站資源)
/usr/share/nginx/html/index.html(nginx首頁文件)
3.nginx參數
-n 查看詳細參數
-v 查看版本信息
-V 查看版本信息和配置信息
-t 檢查配置文件語法是否正確
-T 檢查配置文件語法是否正確并且顯示所有配置文件
-s 啟動或者停止服務
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;用戶名及密碼防止位置
修改文件權限
chmod 400 passwd
chown nginx.nginx passwd(修改的用戶應該是管理nginx服務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網站目錄索引功能autoindex on;
autoindec_exact_size off 將文件大小以更加方便讀的方式顯示
charset utf-8,gbk; 修改字符集支持中文顯示(寫進http進行全局使用)
9.sendfile on;是否實現高效傳輸
tcp_nopush off;方式一:節(jié)省數據包數量,盡量整合發(fā)送
tcp_nodelay on方;式二:一旦數據拆分結束就盡快傳輸
10.keeppalived_timeout 60;連接超時時間
在傳輸完畢后等待一定時間后斷開連接,如果設置為0就是短連接
11.
tcp長連接:一次連接可以發(fā)送多個請求
tcp短連接:一次連接只能發(fā)送一次請求
12.禁止訪問(按照IP劃分)
deny 10.0.0.1;禁止什么訪問
allow all;允許什么訪問
13.nginx網站服務訪問流量限制
基于用戶訪問連接數量進行限制 ngx_http_limit_conn_module
基于用戶訪問請求信息進行限制 ngx_http_limit_req_module
14.ab網站壓測命令
ab -c 10 -n 10 http:///oldboy01
15.autoinde on;開啟目錄索引功能(移除主語文件)
16. location = /nginx_status {
stub_status;
訪問www./nginx_status
打開網頁查看相關連接數
Active connections: 7 激活的連接數,同一時刻有多少再連接
server accepts handled requests 接受的連接數 處理的連接數 完成的請求數
12 12 49
Reading: 0 Writing: 1 Waiting: 6 正在讀取的HTTP報文 正在傳輸的HTTP報文 延遲處理的數量
17.只允許內網地址訪問禁止外網訪問
server {
listen 172.16.1.7:80;
server_name www. ;
只允許內網地址訪問,不允許外網地址訪問
在nginx配置文件中設計地址服務必須重啟服務,不能平滑重啟
18.網站web服務器的別名
server_name www. ;
既可以用www. 訪問,也能使用訪問
官方網站
http:///
|