Nginx 之 http配置段介紹

1? 概述

本文將介紹nginx里http配置段的相關(guān)配置亥至,主要介紹ngx_http_core_module這個(gè)模塊的相關(guān)功能和命令泳梆。由于主配置文件的http配置段里有 include?/etc/nginx/conf.d/*.conf; 這個(gè)配置,因此可以單獨(dú)在路徑/etc/nginx/conf.d/下面單獨(dú)編寫(xiě)配置文件

2? HTTP配置段

2.1? http協(xié)議相關(guān)的配置結(jié)構(gòu)

http?{

...

...各server的公共配置

server?{每個(gè)server用于定義一個(gè)虛擬主機(jī)

...

}

server?{

...

server_name?虛擬主機(jī)名

root?主目錄

alias?路徑別名

location?[OPERATOR]?URL?{?指定URL的特性

...

if?CONDITION?{

...

}

}

}

}

2.2? 與套接字相關(guān)的配置

.1、server

server { ... }

在ngnix里偿荷,實(shí)際是沒(méi)有virtualhost的概念窘游,都是主機(jī),監(jiān)聽(tīng)端口號(hào)跳纳,要放在server里忍饰,不能所有的機(jī)器只用一個(gè)監(jiān)聽(tīng)端口配置。要分別配置監(jiān)聽(tīng)端口

配置一個(gè)虛擬主機(jī)

server {

listen ?address[:PORT]|PORT;

server_name? SERVER_NAME;

root ?/PATH/TO/DOCUMENT_ROOT;

}

注意:listen ?address[:PORT]|PORT;是兩種寫(xiě)法

寫(xiě)法一:listen? 172.18.50.73:8080

寫(xiě)法二:listen? 8080

例子

server {

listen 17

2.18.50.73:8088;

server_name www.sunny.com;

root /usr/share/nginx/html/diysrv;

}

.2寺庄、listen

listen PORT|address[:port]|unix:/PATH/TO/SOCKET_FILE

listen address[:port] [default_server][ssl] [http2 | spdy] [backlog=number] [rcvbuf=size] [sndbuf=size]

default_server設(shè)定為默認(rèn)虛擬主機(jī)

ssl限制僅能夠通過(guò)ssl連接提供服務(wù)

backlog=number超過(guò)并發(fā)連接數(shù)后艾蓝,新請(qǐng)求進(jìn)入后援隊(duì)列的長(zhǎng)度

rcvbuf=size接收緩沖區(qū)大小

sndbuf=size發(fā)送緩沖區(qū)大小

虛擬主機(jī)的創(chuàng)建,三個(gè)方法

(1)基于port斗塘;

listen PORT;指令監(jiān)聽(tīng)在不同的端口

(2)基于ip的虛擬主機(jī)

listen IP:PORT; IP地址不同

(3)基于hostname

server_name? fqdn;指令指向不同的主機(jī)名

例子如下

注意:基于ip 和FQDN要把默認(rèn)主站點(diǎn)的server配置去除赢织,否則主頁(yè)面會(huì)出錯(cuò)

#基于ip

server {

listen 80;

server_name 172.18.50.199;

root /usr/share/nginx/html/baseip;

}

#基于FQDN

server {

listen 80;

server_name www.tracy.com;

location / {

root /usr/share/nginx/html/basefqdn;

index index.html;

}

}

#基于端口

server {

listen 9090;

server_name www.sunny.com;

root /usr/share/nginx/html/baseport;

}

.3、server_name

server_name name...;

.虛擬主機(jī)的主機(jī)名稱(chēng)后可跟多個(gè)由空白字符分隔的字符串

.支持*通配任意長(zhǎng)度的任意字符

dns先解析成名字馍盟,才和以下的配置做對(duì)比生效

server_name? *.magedu.com???www.magedu.*

.支持~起始的字符做正則表達(dá)式模式匹配于置,性能原因慎用

server_name? ~^www\d+\.magedu\.com$

以上語(yǔ)句\d表示[0-9],命令表示匹配www開(kāi)頭的贞岭,www[0-9].magedu.com結(jié)尾的

.匹配優(yōu)先級(jí)機(jī)制從高到低:

(1)首先是字符串精確匹配如:www.magedu.com

(2)左側(cè)*通配符如:*.magedu.com

(3)右側(cè)*通配符如:www.magedu.*

(4)正則表達(dá)式如:~^.*\.magedu\.com$

(5) default_server

.4八毯、tcp_nodelay

tcp_nodelay? on | off;

在keepalived模式下的連接是否啟用TCP_NODELAY選項(xiàng)

當(dāng)為off時(shí),延遲發(fā)送瞄桨,合并多個(gè)請(qǐng)求后再發(fā)送话速,湊齊多個(gè)請(qǐng)求后在發(fā)送給后臺(tái)處理,但是這個(gè)情況可能會(huì)導(dǎo)致客戶(hù)端等待讲婚,會(huì)比較慢尿孔,所以一般是不延遲發(fā)送

默認(rèn)on時(shí),不延遲發(fā)送

可用于:http,server, location

.5筹麸、sendfile

sendfile? on | off;

是否啟用sendfile功能活合,在內(nèi)核中封裝報(bào)文直接發(fā)送,速度更快,默認(rèn)Off

.6物赶、server_tokens

server_tokens??on | off | build | string

是否在響應(yīng)報(bào)文的Server首部顯示nginx版本白指,默認(rèn)是on,建議設(shè)置為off

2.3定義路徑相關(guān)的配置

.7、root

.設(shè)置web資源的路徑映射酵紫;用于指明請(qǐng)求的URL所對(duì)應(yīng)的文檔的目錄路徑告嘲,可用于http, server,location, if in location

server {

...

root ?/data/www/vhost1;

}

.8、location

location [ = | ~ | ~* | ^~ ]? uri{ ... }

=:對(duì)URI做精確匹配奖地;

^~:對(duì)URI的最左邊部分做匹配檢查橄唬,不區(qū)分字符大小寫(xiě)

~:對(duì)URI做正則表達(dá)式模式匹配,區(qū)分字符大小寫(xiě)

~*:對(duì)URI做正則表達(dá)式模式匹配参歹,不區(qū)分字符大小寫(xiě)

不帶符號(hào):匹配起始于此uri的所有的uri

匹配優(yōu)先級(jí)從高到低:=, ^~,~/~*,不帶符號(hào)

location @name { ... }

location是重點(diǎn)仰楚,可以定義復(fù)雜的邏輯關(guān)系,或者實(shí)現(xiàn)身份驗(yàn)證,重定向等, 后面跟URL僧界,根據(jù)URL做相應(yīng)的控制侨嘀,匹配到相應(yīng)的url后做什么操作, 這個(gè)相當(dāng)于條件判斷

在一個(gè)server中l(wèi)ocation配置段可存在多個(gè),用于實(shí)現(xiàn)從uri到文件系統(tǒng)的路徑映射捂襟;ngnix會(huì)根據(jù)用戶(hù)請(qǐng)求的URI來(lái)檢查定義的所有l(wèi)ocation咬腕,并找出一個(gè)最佳匹配,而后應(yīng)用其配置

.示例一:

server {

server_name? www.sunny.com;

location ?/images/ ?{

root ?/data/imgs/;

}

}

測(cè)試:當(dāng)訪問(wèn)http:// www.sunny.com/images/aa.jpg將會(huì)被轉(zhuǎn)到訪問(wèn)/data/imgs/images/aa.jpg

.9葬荷、alias

alias? path;

路徑別名涨共,文檔映射的另一種機(jī)制;僅能用于location上下文

例子

server {

listen 8080;

server_name www.sunny.com;

root /usr/share/nginx/html/diysrv;

location? /images {

alias? /app/test;

}

}

表示當(dāng)訪問(wèn)http://www.sunny.com:8080/images/將都會(huì)被轉(zhuǎn)換到路徑/app/test下的對(duì)應(yīng)資源

如訪問(wèn)http://www.sunny.com:8080/images/相當(dāng)于是訪問(wèn)了/app/test/index.html

如訪問(wèn)http://www.sunny.com:8080/images/aa相當(dāng)于是訪問(wèn)了/app/test/aa

區(qū)分alias和root例子:

location /bbs/ {

alias ?/web/forum/;

}

當(dāng)訪問(wèn)http://172.18.50.73/bbs相當(dāng)于訪問(wèn)該機(jī)器下的/web/forum/index.html資源

location /bbs/ {

root /web/forum/;

} --> /web/forum/bbs/index.html

當(dāng)訪問(wèn)http://172.18.50.73/bbs相當(dāng)于訪問(wèn)該機(jī)器下的/web/forum/bbs/index.html資源

.注意:location中使用root指令和alias指令的意義不同

(a) root闯狱,給定的路徑對(duì)應(yīng)于location中的/uri/左側(cè)的/

(b) alias煞赢,給定的路徑對(duì)應(yīng)于location中的/uri/右側(cè)的/

.10、index

index? file ...;

指定默認(rèn)網(wǎng)頁(yè)資源哄孤,注意:ngx_http_index_module模塊

.11、error_page

error_page? code ... [=[response]] ?uri;

模塊:ngx_http_core_module

定義錯(cuò)誤頁(yè)吹截,以指定的響應(yīng)狀態(tài)碼進(jìn)行響應(yīng)

可用位置:http,server, location, if in location

error_page 404 /404.html

error_page? 404 =200 /404.html

例子

例一瘦陈,用alias

error_page 404? /404.html;

location ?/404.html {

alias? /app/error_pages/404.html;

}

#表示當(dāng)訪問(wèn)網(wǎng)站出現(xiàn)404報(bào)錯(cuò)的時(shí)候,就跳轉(zhuǎn)到/app/error_pages/404.html這個(gè)頁(yè)面

例二波俄,用root

error_page 404? /404.html;

location ?/404.html {

alias? /app/error_pages/;

}

#表示當(dāng)訪問(wèn)網(wǎng)站出現(xiàn)404報(bào)錯(cuò)的時(shí)候晨逝,就跳轉(zhuǎn)到/app/error_pages/404.html這個(gè)頁(yè)面

例三

error_page 404=200? /404.html;

location /404.html {

alias?/app/error_pages/404.html;

}

#注意等號(hào)的位置,404后面有空格懦铺,然后跟=200捉貌,等號(hào)和200之間沒(méi)有空格,錯(cuò)誤頁(yè)面返回200的代碼冬念,而不返回404代碼趁窃,防止客戶(hù)端訪問(wèn)該網(wǎng)頁(yè)發(fā)生錯(cuò)誤代碼的時(shí)候被劫持

.12、try_files

try_files? file ... uri;

try_files? file ... =code;

按順序檢查文件是否存在急前,返回第一個(gè)找到的文件或文件夾(結(jié)尾加斜線表示為文件夾)醒陆,如果所有的文件或文件夾都找不到,會(huì)進(jìn)行一個(gè)內(nèi)部重定向到最后一個(gè)參數(shù)裆针。只有最后一個(gè)參數(shù)可以引起一個(gè)內(nèi)部重定向刨摩,之前的參數(shù)只設(shè)置內(nèi)部URI的指向。最后一個(gè)參數(shù)是回退URI且必須存在世吨,否則會(huì)出現(xiàn)內(nèi)部500錯(cuò)誤

例子

location ?/images/ ?{ try_files??$uri?? /images/default.gif; }

默認(rèn)先找$uri這個(gè)資源澡刹,如果沒(méi)有,就訪問(wèn)/images/default.gif

注意這里的$uri是變量耘婚,假設(shè)家目錄是/usr/share/nginx/html,那么上例表示訪問(wèn)http://172.18.50.73/images時(shí)嘗試訪問(wèn)/usr/share/nginx/html/images/index.html和/usr/share/nginx/html/ default.gif的資源

location / { try_files $uri? $uri /index.html $uri.html =404; }

表示依次先找$uri? $uri /index.html$uri.html罢浇,如果都不存在,就返回報(bào)錯(cuò)代碼是404報(bào)錯(cuò)

2.4定義客戶(hù)端請(qǐng)求的相關(guān)配置

.13边篮、keepalive_timeout

keepalive_timeout?? timeout ?[header_timeout];

設(shè)定保持連接超時(shí)時(shí)長(zhǎng)己莺,0表示禁止長(zhǎng)連接奏甫,默認(rèn)為75s,可以調(diào)整短點(diǎn)凌受。

.14阵子、keepalive_requests

keepalive_requests? number;

在一次長(zhǎng)連接上所允許請(qǐng)求的資源的最大數(shù)量,默認(rèn)為100

.15胜蛉、keepalive_disable

keepalive_disable?? none | browser ...

對(duì)哪種瀏覽器禁用長(zhǎng)連接

.16挠进、send_timeout

send_timeout?? time;

向客戶(hù)端發(fā)送響應(yīng)報(bào)文的超時(shí)時(shí)長(zhǎng),此處是指兩次寫(xiě)操作之間的間隔時(shí)長(zhǎng)誊册,而非整個(gè)響應(yīng)過(guò)程的傳輸時(shí)長(zhǎng)

.17领突、client_body_buffer_size

client_body_buffer_size? size;

用于接收每個(gè)客戶(hù)端請(qǐng)求報(bào)文的body部分的緩沖區(qū)大小案怯;默認(rèn)為16k君旦;超出此大小時(shí),其將被暫存到磁盤(pán)上的由client_body_temp_path指令所定義的位置嘲碱。注意金砍,這里是接收,不是下發(fā)數(shù)據(jù)麦锯,上傳文件到該網(wǎng)站恕稠,才看得到效果

.18、client_body_temp_path

client_body_temp_path? path [level1 [level2 [level3]]];

設(shè)定用于存儲(chǔ)客戶(hù)端請(qǐng)求報(bào)文的body部分的臨時(shí)存儲(chǔ)路徑及子目錄結(jié)構(gòu)和數(shù)量

這里指定的路徑下存放文件扶欣,目錄名為16進(jìn)制的數(shù)字鹅巍,是經(jīng)過(guò)hash運(yùn)算后,利用hash的值的最后幾位數(shù)料祠,依次分層骆捧,如三層目錄進(jìn)行存放文件

例子

client_body_temp_path?? /var/tmp/client_body? 1 2 2

1 1級(jí)目錄占1位16進(jìn)制,即2^4=16個(gè)目錄0-f

2 2級(jí)目錄占2位16進(jìn)制术陶,即2^8=256個(gè)目錄00-ff

2 3級(jí)目錄占2位16進(jìn)制凑懂,即2^8=256個(gè)目錄00-ff

2.5對(duì)客戶(hù)端進(jìn)行限制的相關(guān)配置

.19、limit_rate

limit_rate?? rate;

限制響應(yīng)給客戶(hù)端的傳輸速率梧宫,單位是bytes/second接谨,默認(rèn)值0表示無(wú)限制

.20、limit_except

limit_except? method ... { ... }塘匣,僅用于location

限制客戶(hù)端使用除了指定的請(qǐng)求方法之外的其它方法

method:GET, HEAD, POST, PUT, DELETE脓豪,MKCOL, COPY, MOVE,OPTIONS, PROPFIND,PROPPATCH, LOCK, UNLOCK, PATCH

location {

limit_except?? GET {

allow 192.168.1.0/24;

deny all;

}

}

除了GET和HEAD之外其它方法僅允許192.168.1.0/24網(wǎng)段主機(jī)使用

2.6文件操作優(yōu)化的配置

.21、aio

aio?? on | off | threads[=pool];是否啟用aio功能,默認(rèn)是on

.22忌卤、directio

directio? size | off;一般是異步

是否同步(直接)寫(xiě)磁盤(pán)扫夜,而非寫(xiě)緩存,在Linux主機(jī)啟用O_DIRECT標(biāo)記,則文件大于等于給定大小時(shí)使用笤闯,例如directio? 4m

.23堕阔、open_file_cache

open_file_cache? off;

open_file_cache? max=N ?[inactive=time];

nginx可以緩存以下三種信息:緩存的是元數(shù)據(jù),不是數(shù)據(jù)本身

(1)文件元數(shù)據(jù):文件的描述符颗味、文件大小和最近一次的修改時(shí)間

(2)打開(kāi)的目錄結(jié)構(gòu)

(3)沒(méi)有找到的或者沒(méi)有權(quán)限訪問(wèn)的文件的相關(guān)信息

max=N:可緩存的緩存項(xiàng)上限超陆;達(dá)到上限后會(huì)使用LRU算法實(shí)現(xiàn)管理

inactive=time:緩存項(xiàng)的非活動(dòng)時(shí)長(zhǎng),在此處指定的時(shí)長(zhǎng)內(nèi)未被命中的或命中的次數(shù)少于open_file_cache_min_uses指令所指定的次數(shù)的緩存項(xiàng)即為非活動(dòng)項(xiàng)浦马,將被刪除

inactive=time為10分鐘时呀;open_file_cache_min_uses為3,表示在10分鐘內(nèi)訪問(wèn)低于3次表示非活動(dòng)的晶默,該文件就不會(huì)被緩存谨娜,會(huì)被清空

.24、open_file_cache_errors

open_file_cache_errors?on | off;

是否緩存查找時(shí)發(fā)生錯(cuò)誤的文件一類(lèi)的信息,默認(rèn)值為off

.25磺陡、open_file_cache_min_uses

open_file_cache_min_uses? number;

open_file_cache指令的inactive參數(shù)指定的時(shí)長(zhǎng)內(nèi)趴梢,至少被命中此處指定的次數(shù)方可被歸類(lèi)為活動(dòng)項(xiàng),默認(rèn)值為1

.26、open_file_cache_valid

open_file_cache_valid? time;

緩存項(xiàng)有效性的檢查頻率,默認(rèn)值為60s

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末仅政,一起剝皮案震驚了整個(gè)濱河市垢油,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌圆丹,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,807評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件躯喇,死亡現(xiàn)場(chǎng)離奇詭異辫封,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)廉丽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)倦微,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人正压,你說(shuō)我怎么就攤上這事欣福。” “怎么了焦履?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,589評(píng)論 0 363
  • 文/不壞的土叔 我叫張陵拓劝,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我嘉裤,道長(zhǎng)郑临,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,188評(píng)論 1 300
  • 正文 為了忘掉前任屑宠,我火速辦了婚禮厢洞,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己躺翻,他們只是感情好丧叽,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,185評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著公你,像睡著了一般踊淳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上省店,一...
    開(kāi)封第一講書(shū)人閱讀 52,785評(píng)論 1 314
  • 那天嚣崭,我揣著相機(jī)與錄音,去河邊找鬼懦傍。 笑死雹舀,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的粗俱。 我是一名探鬼主播说榆,決...
    沈念sama閱讀 41,220評(píng)論 3 423
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼寸认!你這毒婦竟也來(lái)了签财?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 40,167評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤偏塞,失蹤者是張志新(化名)和其女友劉穎唱蒸,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體灸叼,經(jīng)...
    沈念sama閱讀 46,698評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡神汹,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,767評(píng)論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了古今。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片屁魏。...
    茶點(diǎn)故事閱讀 40,912評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖捉腥,靈堂內(nèi)的尸體忽然破棺而出氓拼,到底是詐尸還是另有隱情,我是刑警寧澤抵碟,帶...
    沈念sama閱讀 36,572評(píng)論 5 351
  • 正文 年R本政府宣布桃漾,位于F島的核電站,受9級(jí)特大地震影響立磁,放射性物質(zhì)發(fā)生泄漏呈队。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,254評(píng)論 3 336
  • 文/蒙蒙 一唱歧、第九天 我趴在偏房一處隱蔽的房頂上張望宪摧。 院中可真熱鬧粒竖,春花似錦、人聲如沸几于。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,746評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)沿彭。三九已至朽砰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間喉刘,已是汗流浹背瞧柔。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,859評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留睦裳,地道東北人造锅。 一個(gè)月前我還...
    沈念sama閱讀 49,359評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像廉邑,于是被迫代替她去往敵國(guó)和親哥蔚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,922評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理蛛蒙,服務(wù)發(fā)現(xiàn)糙箍,斷路器,智...
    卡卡羅2017閱讀 134,716評(píng)論 18 139
  • 配置運(yùn)行Nginx服務(wù)器用戶(hù)(組) 用于配置運(yùn)行Nginx服務(wù)器用戶(hù)(組)的指令是user牵祟,其語(yǔ)法格式為: use...
    吃瓜的東閱讀 4,508評(píng)論 0 41
  • Nginx簡(jiǎn)介 解決基于進(jìn)程模型產(chǎn)生的C10K問(wèn)題,請(qǐng)求時(shí)即使無(wú)狀態(tài)連接如web服務(wù)都無(wú)法達(dá)到并發(fā)響應(yīng)量級(jí)一萬(wàn)的現(xiàn)...
    魏鎮(zhèn)坪閱讀 2,009評(píng)論 0 9
  • 1.簡(jiǎn)介: ? Nginx:engine X 深夯,2002年,開(kāi)源诺苹,商業(yè)版? http協(xié)議:web服務(wù)器(類(lèi)似于ht...
    尛尛大尹閱讀 1,871評(píng)論 0 3
  • 1.ngnix介紹 ngnix www服務(wù)軟件 俄羅斯人開(kāi)發(fā) 開(kāi)源 性能很高 本身是一款靜態(tài)WWW軟件 靜態(tài)小文件...
    逗比punk閱讀 2,101評(píng)論 1 6