編譯安裝nginx并配置

編譯安裝nginx并配置

[TOC]

reference1: https://www.runoob.com/linux/nginx-install-setup.html --> nginx

reference2: https://www.cnblogs.com/felixzh/p/6283791.html --> nginx編譯參數(shù)詳解

reference3: https://www.cnblogs.com/knowledgesea/p/5175711.html --> nginx配置詳解

1. 安裝編譯工具及庫文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel pcre-devel # 或
yum -y groupinstall "Development Tools" "Server Platform Development" \ 
    --setopt=group_package_types=mandatory,default,optional # 此步驟較慢

2. 安裝pcre

# pcre 作用是讓 Nginx 支持 Rewrite 功能
cd /usr/local/src/
wget https://jaist.dl.sourceforge.net/project/pcre/pcre2/10.33/pcre2-10.33.tar.gz
cd pcre2-10.33 # 還是下載8.x版本, nginx暫時(shí)不支持10版本的pcre
./configure --prefix=/usr/local/pcre
make && make install
pcre-config --version # 查看pcre版本

3. 安裝 Nginx

1. 創(chuàng)建 Nginx 運(yùn)行使用的用戶 nginx

/usr/sbin/groupadd nginx
/usr/sbin/useradd -r -s /sbin/nologin -g nginx nginx

2. 編譯安裝nginx

cd /usr/local/src/
wget http://nginx.org/download/nginx-1.16.0.tar.gz
tar xf nginx-1.16.0.tar.gz
cd nginx-1.16.0
/configure --prefix=/usr/local/nginx \ 
           --user=nginx --group=nginx \
           --with-http_realip_module \
           --with-http_flv_module \ # 流媒體
           --with-http_image_filter_module \ # 需要安裝GD庫
           --with-http_gzip_static_module \
           --with-http_gunzip_module \ # 支持壓縮
           --with-http_stub_status_module \ # 健康探測頁面 
           --with-http_ssl_module \ 
           --with-threads \
           --with-file-aio \
           --with-pcre=/usr/local/src/pcre # 目前nginx還暫時(shí)不支持10版本的pcre
           -error-log-path= \ # 錯(cuò)誤日志路徑, 默認(rèn)均在--prefix指定目錄下
           -http-log-path= \ # http日志路徑
           # 可在./configure時(shí)多次重復(fù)設(shè)置, 編譯時(shí)的參數(shù)最好保存
make && make install
/usr/local/webserver/nginx/sbin/nginx -v # 查看nginx版本, 到此安裝完成       

以下是編譯參數(shù)詳解:

--prefix= 指向安裝目錄
--sbin-path= 指定執(zhí)行程序文件存放位置
--modules-path= 指定第三方模塊的存放路徑
--conf-path= 指定配置文件存放位置
--error-log-path= 指定錯(cuò)誤日志存放位置
--pid-path= 指定pid文件存放位置
--lock-path= 指定lock文件存放位置
--user= 指定程序運(yùn)行時(shí)的非特權(quán)用戶
--group= 指定程序運(yùn)行時(shí)的非特權(quán)用戶組
--builddir= 指向編譯目錄
--with-rtsig_module 啟用rtsig模塊支持
--with-select_module 啟用select模塊支持, 一種輪詢處理方式, 不推薦在高并發(fā)環(huán)境中使用, 禁用:--without-select_module
--with-poll_module 啟用poll模塊支持,功能與select相同, 不推薦在高并發(fā)環(huán)境中使用
--with-threads 啟用thread pool支持
--with-file-aio 啟用file aio支持
--with-http_ssl_module 啟用https支持
--with-http_v2_module 啟用ngx_http_v2_module支持
--with-ipv6 啟用ipv6支持
--with-http_realip_module 允許從請(qǐng)求報(bào)文頭中更改客戶端的ip地址, 默認(rèn)為關(guān)
--with-http_addition_module 啟用ngix_http_additon_mdoule支持(作為一個(gè)輸出過濾器, 分部分響應(yīng)請(qǐng)求)
--with -http_xslt_module 啟用ngx_http_xslt_module支持, 過濾轉(zhuǎn)換XML請(qǐng)求 
--with-http_image_filter_mdoule 啟用ngx_http_image_filter_module支持, 傳輸JPEG\GIF\PNG圖片的一個(gè)過濾器, 默認(rèn)不啟用, 需要安裝gd庫
--with-http_geoip_module 啟用ngx_http_geoip_module支持, 用于創(chuàng)建基于MaxMind GeoIP二進(jìn)制文件相配的客戶端IP地址的ngx_http_geoip_module變量
--with-http_sub_module 啟用ngx_http_sub_module支持, 允許用一些其他文本替換nginx響應(yīng)中的一些文本
--with-http_dav_module 啟用ngx_http_dav_module支持, 增加PUT润努、DELETE波丰、MKCOL創(chuàng)建集合, COPY和MOVE方法, 默認(rèn)為關(guān)閉, 需要編譯開啟
--with-http_flv_module 啟用ngx_http_flv_module支持, 提供尋求內(nèi)存使用基于時(shí)間的偏移量文件
--with-http_mp4_module 啟用ngx_http_mp4_module支持, 啟用對(duì)mp4類視頻文件的支持
--with-http_gzip_static_module 啟用ngx_http_gzip_static_module支持, 支持在線實(shí)時(shí)壓縮輸出數(shù)據(jù)流
--with-http_random_index_module 啟用ngx_http_random_index_module支持, 從目錄中隨機(jī)挑選一個(gè)目錄索引
--with-http_secure_link_module 啟用ngx_http_secure_link_module支持, 計(jì)算和檢查要求所需的安全鏈接網(wǎng)址
--with-http_degradation_module 啟用ngx_http_degradation_module 支持允許在內(nèi)存不足的情況下返回204或444代碼
--with-http_stub_status_module 啟用ngx_http_stub_status_module 支持查看nginx的狀態(tài)頁
--without-http_charset_module 禁用ngx_http_charset_module這一模塊, 可以進(jìn)行字符集間的轉(zhuǎn)換, 從其它字符轉(zhuǎn)換成UTF-8或者從UTF8轉(zhuǎn)換成其它字符. 它只能從服務(wù)器到客戶端方向, 只有一個(gè)字節(jié)的字符可以轉(zhuǎn)換
--without-http_gzip_module 禁用ngx_http_gzip_module支持, 同--with-http_gzip_static_module功能一樣
--without-http_ssi_module 禁用ngx_http_ssi_module支持, 提供了一個(gè)在輸入端處理服務(wù)器包含文件(SSI) 的過濾器
--without-http_userid_module 禁用ngx_http_userid_module支持, 該模塊用來確定客戶端后續(xù)請(qǐng)求的cookies
--without-http_access_module 禁用ngx_http_access_module支持, 提供了基于主機(jī)ip地址的訪問控制功能
--without-http_auth_basic_module 禁用ngx_http_auth_basic_module支持, 可以使用用戶名和密碼認(rèn)證的方式來對(duì)站點(diǎn)或部分內(nèi)容進(jìn)行認(rèn)證
--without-http_autoindex_module 禁用ngx_http_authindex_module, 該模塊用于在ngx_http_index_module模塊沒有找到索引文件時(shí)發(fā)出請(qǐng)求, 用于自動(dòng)生成目錄列表
--without-http_geo_module 禁用ngx_http_geo_module支持, 這個(gè)模塊用于創(chuàng)建依賴于客戶端ip的變量
--without-http_map_module 禁用ngx_http_map_module支持, 使用任意的鍵、值 對(duì)設(shè)置配置變量
--without-http_split_clients_module 禁用ngx_http_split_clients_module支持, 該模塊用于基于用戶ip地址玉吁、報(bào)頭链韭、cookies劃分用戶
--without-http_referer_module 禁用ngx_http_referer_modlue支持, 該模塊用來過濾請(qǐng)求, 報(bào)頭中Referer值不正確的請(qǐng)求
--without-http_rewrite_module 禁用ngx_http_rewrite_module支持. 該模塊允許使用正則表達(dá)式改變URI, 并且根據(jù)變量來轉(zhuǎn)向以及選擇配置. 如果在server級(jí)別設(shè)置該選項(xiàng), 那么將在location之前生效, 但如果location中還有更進(jìn)一步的重寫規(guī)則, location部分的規(guī)則依然會(huì)被執(zhí)行. 如果這個(gè)URI重寫是因?yàn)閘ocation部分的規(guī)則造成的, 那么location部分會(huì)再次被執(zhí)行作為新的URI, 這個(gè)循環(huán)會(huì)被執(zhí)行10次, 最后返回一個(gè)500錯(cuò)誤. 
--without-http_proxy_module 禁用ngx_http_proxy_module支持, http代理功能
--without-http_fastcgi_module 禁用ngx_http_fastcgi_module支持, 該模塊允許nginx與fastcgi進(jìn)程交互, 并通過傳遞參數(shù)來控制fastcgi進(jìn)程工作
--without-http_uwsgi_module 禁用ngx_http_uwsgi_module支持, 該模塊用來使用uwsgi協(xié)議, uwsgi服務(wù)器相關(guān)
--without-http_scgi_module 禁用ngx_http_scgi_module支持, 類似于fastcgi, 也是應(yīng)用程序與http服務(wù)的接口標(biāo)準(zhǔn)
--without-http_memcached_module 禁用ngx_http_memcached支持, 用來提供簡單的緩存, 提高系統(tǒng)效率
--without-http_limit_conn_module 禁用ngx_http_limit_conn_module支持, 該模塊可以根據(jù)條件進(jìn)行會(huì)話的并發(fā)連接數(shù)進(jìn)行限制
--without-http_limit_req_module 禁用ngx_limit_req_module支持, 該模塊可以實(shí)現(xiàn)對(duì)于一個(gè)地址進(jìn)行請(qǐng)求數(shù)量的限制
--without-http_empty_gif_module 禁用ngx_http_empty_gif_module支持, 該模塊在內(nèi)存中常駐了一個(gè)1*1的透明gif圖像, 可以被非撑惆祝快速的調(diào)用
--without-http_browser_module 禁用ngx_http_browser_mdoule支持, 創(chuàng)建依賴于請(qǐng)求報(bào)頭的值, 如果瀏覽器為modern, 則$modern_browser等于modern_browser_value的值;如果瀏覽器為old, 則$ancient_browser等于$ancient_browser_value指令分配的值硬纤;如果瀏覽器為MSIE, 則$msie等于1
--without-http_upstream_ip_hash_module 禁用ngx_http_upstream_ip_hash_module支持, 該模塊用于簡單的負(fù)載均衡
--with-http_perl_module 啟用ngx_http_perl_module支持, 它使nginx可以直接使用perl或通過ssi調(diào)用perl
--with-perl_modules_path= 設(shè)定perl模塊路徑
--with-perl= 設(shè)定perl庫文件路徑
--http-log-path= 設(shè)定access log路徑
--http-client-body-temp-path= 設(shè)定http客戶端請(qǐng)求臨時(shí)文件路徑
--http-proxy-temp-path= 設(shè)定http代理臨時(shí)文件路徑
--http-fastcgi-temp-path= 設(shè)定http fastcgi臨時(shí)文件路徑
--http-uwsgi-temp-path= 設(shè)定http scgi臨時(shí)文件路徑
--http-scgi-temp-path= 設(shè)定http scgi臨時(shí)文件路徑
--without-http 禁用http server功能
--without-http-cache 禁用http cache功能
--with-mail 啟用POP3解滓、IMAP4、SMTP代理模塊
--with-mail_ssl_module 啟用ngx_mail_ssl_module支持
--without-mail_pop3_module 禁用pop3協(xié)議
--without-mail_iamp_module 禁用iamp協(xié)議
--without-mail_smtp_module 禁用smtp協(xié)議
--with-google_perftools_module 啟用ngx_google_perftools_mdoule支持, 調(diào)試用, 可以用來分析程序性能瓶頸
--with-cpp_test_module 啟用ngx_cpp_test_module支持
--add-module= 指定外部模塊路徑, 啟用對(duì)外部模塊的支持
--with-cc= 指向C編譯器路徑
--with-cpp= 指向C預(yù)處理路徑
--with-cc-opt= 設(shè)置C編譯器參數(shù), 指定--with-cc-opt="-I /usr/lcal/include", 如果使用select()函數(shù), 還需要同時(shí)指定文件描述符數(shù)量--with-cc-opt="-D FD_SETSIZE=2048" (PCRE庫) 
--with-ld-opt= 設(shè)置連接文件參數(shù), 需要指定--with-ld-opt="-L /usr/local/lib" (PCRE庫) 
--with-cpu-opt= 指定編譯的CPU類型, 如pentium,pentiumpro,...amd64,ppc64...
--without-pcre 禁用pcre庫
--with-pcre 啟用pcre庫
--with-pcre= 指向pcre庫文件目錄
--with-pcre-opt= 在編譯時(shí)為pcre庫設(shè)置附加參數(shù)
--with-md5= 指向md5庫文件目錄
--with-md5-opt= 編譯時(shí)為md5庫設(shè)置附加參數(shù)
--with-md5-asm 使用md5匯編源
--with-sha1= 指向sha1庫文件目錄
--with-sha1-opt= 編譯時(shí)為sha1庫設(shè)置附加參數(shù)
--with-sha1-asm 使用sha1匯編源
--with-zlib= 指向zlib庫文件目錄
--with-zlib-opt= 在編譯時(shí)為zlib設(shè)置附加參數(shù)
--with-zlib-asm= 為指定的CPU使用匯編源進(jìn)行優(yōu)化
--with-libatomic 為原子內(nèi)存的更新操作的實(shí)現(xiàn)提供一個(gè)架構(gòu)
--with-libatomic= 指向libatomic_ops的安裝目錄
--with-openssl= 指向openssl安裝目錄
--with-openssl-opt= 在編譯時(shí)為openssl設(shè)置附加參數(shù)
--with-debug 啟用debug日志

4. Nginx 配置

1. 編輯nginx配置文件

vi /usr/local/nginx/conf/nginx.conf # 將/usr/local/nginx/conf/nginx.conf替換為以下內(nèi)容
user nginx nginx;
worker_processes 2; # 設(shè)置值和CPU核心數(shù)一致
error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; # 日志位置和日志級(jí)別
pid /usr/local/webserver/nginx/nginx.pid;
# Specifies the value for maximum file descriptors that can be opened by this process
worker_rlimit_nofile 65535;
events
{
  use epoll;
  worker_connections 65535;
}
http
{
  include mime.types;
  default_type application/octet-stream;
  log_format main  '$remote_addr - $remote_user [$time_local] "$request" '
               '$status $body_bytes_sent "$http_referer" '
               '"$http_user_agent" $http_x_forwarded_for';
  
# charset gb2312;
     
  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 8m;
     
  sendfile on;
  tcp_nopush on;
  keepalive_timeout 60;
  tcp_nodelay on;
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 64k;
  fastcgi_buffers 4 64k;
  fastcgi_busy_buffers_size 128k;
  fastcgi_temp_file_write_size 128k;
  gzip on; 
  gzip_min_length 1k;
  gzip_buffers 4 16k;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_types text/plain application/x-javascript text/css application/xml;
  gzip_vary on;
 
 # limit_zone crawler $binary_remote_addr 10m;
 # 下面是server虛擬主機(jī)的配置
 server
  {
    listen 80; # 監(jiān)聽端口
    server_name localhost; # 域名
    index index.html index.htm index.php;
    root /usr/local/webserver/nginx/html; # 站點(diǎn)目錄
    
    location /status
    {
      stub_status on;
      allow 172.16.0.0/16;
      deny all;
    }
    
    location ~ .*\.(php|php5)?$
    {
      # fastcgi_pass unix:/tmp/php-cgi.sock;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      include fastcgi.conf;
    }
    
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$
    {
      expires 30d;
  # access_log off;
    }
    
    location ~ .*\.(js|css)?$
    {
      expires 15d;
   # access_log off;
    }
    
    access_log off;
  }

}

2. 檢查配置文件nginx.conf的正確性

/usr/local/nginx/sbin/nginx -t

5. 啟動(dòng)Nginx

/usr/local/nginx/sbin/nginx
ps -ef | grep nginx # 查看nginx的master和worker

/usr/local/nginx/sbin/nginx -s reload # 重新載入配置文件
/usr/local/nginx/sbin/nginx -s reopen # 重啟 Nginx
/usr/local/nginx/sbin/nginx -s stop   # 停止 Nginx

6. 自帶的健康檢測

利用nginx自帶模塊ngx_http_proxy_module和ngx_http_upstream_module對(duì)后端節(jié)點(diǎn)做健康檢查:


語法: proxy_connect_timeout time;
默認(rèn)值: proxy_connect_timeout 60s;
上下文: http, server, location
設(shè)置與后端服務(wù)器建立連接的超時(shí)時(shí)間. 應(yīng)該注意這個(gè)超時(shí)一般不可能大于75秒.

語法: proxy_read_timeout time;
默認(rèn)值: proxy_read_timeout 60s;
上下文: http, server, location
定義從后端服務(wù)器讀取響應(yīng)的超時(shí). 此超時(shí)是指相鄰兩次讀操作之間的最長時(shí)間間隔, 而不是整個(gè)響應(yīng)傳輸完成的最長時(shí)間. 如果后端服務(wù)器在超時(shí)時(shí)間段內(nèi)沒有傳輸任何數(shù)據(jù), 連接將被關(guān)閉.


語法: proxy_next_upstream error | timeout | invalid_header | http_500 | http_502 | http_503 | http_504 |http_404 | off ...;
默認(rèn)值: proxy_next_upstream error timeout;
上下文: http, server, location
指定在何種情況下一個(gè)失敗的請(qǐng)求應(yīng)該被發(fā)送到下一臺(tái)后端服務(wù)器:

error 和后端服務(wù)器建立連接時(shí), 或者向后端服務(wù)器發(fā)送請(qǐng)求時(shí), 或者從后端服務(wù)器接收響應(yīng)頭時(shí), 出現(xiàn)錯(cuò)誤
timeout 和后端服務(wù)器建立連接時(shí), 或者向后端服務(wù)器發(fā)送請(qǐng)求時(shí), 或者從后端服務(wù)器接收響應(yīng)頭時(shí), 出現(xiàn)超時(shí)
invalid_header 后端服務(wù)器返回空響應(yīng)或者非法響應(yīng)頭
http_500 后端服務(wù)器返回的響應(yīng)狀態(tài)碼為500
http_502 后端服務(wù)器返回的響應(yīng)狀態(tài)碼為502
http_503 后端服務(wù)器返回的響應(yīng)狀態(tài)碼為503
http_504 后端服務(wù)器返回的響應(yīng)狀態(tài)碼為504
http_404 后端服務(wù)器返回的響應(yīng)狀態(tài)碼為404
off 停止將請(qǐng)求發(fā)送給下一臺(tái)后端服務(wù)器

需要理解一點(diǎn)的是, 只有在沒有向客戶端發(fā)送任何數(shù)據(jù)以前, 將請(qǐng)求轉(zhuǎn)給下一臺(tái)后端服務(wù)器才是可行的. 也就是說, 如果在傳輸響應(yīng)到客戶端時(shí)出現(xiàn)錯(cuò)誤或者超時(shí), 這類錯(cuò)誤是不可能恢復(fù)的.

upstream LB-WWW {
      ip_hash; 
      #這是負(fù)載均衡的ip_hash負(fù)載策略筝家,好處是實(shí)現(xiàn)session共享洼裤。根據(jù)需求決定是否加這個(gè)配置。
      server 192.168.1.101:80 max_fails=3 fail_timeout=30s;     
      #max_fails = 3 為允許失敗的次數(shù)溪王,默認(rèn)值為1腮鞍。 這是對(duì)后端節(jié)點(diǎn)做健康檢查。
      server 192.168.1.102:80 max_fails=3 fail_timeout=30s;     
      #fail_timeout = 30s 當(dāng)max_fails次失敗后莹菱,暫停將請(qǐng)求分發(fā)到該后端服務(wù)器的時(shí)間
      server 192.168.1.118:80 max_fails=3 fail_timeout=30s;
    }
    
server {
     listen       80;
     server_name  www.wangshibo.com;
    
     access_log  /usr/local/nginx/logs/www-access.log main;
     error_log  /usr/local/nginx/logs/www-error.log;
    # 因?yàn)閡pstream配置里每個(gè)幾秒就會(huì)去健康后端機(jī)器, 當(dāng)連接失敗時(shí), 錯(cuò)誤信息就輸出到error.log日志里
      
     location / {
         proxy_pass http://LB-WWW;
         proxy_connect_timeout 300;
         proxy_send_timeout 300;
         proxy_next_upstream error timeout invalid_header http_502 http_503 http_504;
     }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末移国,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子道伟,更是在濱河造成了極大的恐慌迹缀,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異祝懂,居然都是意外死亡票摇,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門嫂易,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兄朋,“玉大人,你說我怎么就攤上這事怜械÷停” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵缕允,是天一觀的道長峡扩。 經(jīng)常有香客問我,道長障本,這世上最難降的妖魔是什么教届? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮驾霜,結(jié)果婚禮上案训,老公的妹妹穿的比我還像新娘。我一直安慰自己粪糙,他們只是感情好强霎,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蓉冈,像睡著了一般城舞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上寞酿,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天家夺,我揣著相機(jī)與錄音,去河邊找鬼伐弹。 笑死拉馋,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的惨好。 我是一名探鬼主播椅邓,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼昧狮!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起板壮,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤逗鸣,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體撒璧,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡透葛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了卿樱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片僚害。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖繁调,靈堂內(nèi)的尸體忽然破棺而出萨蚕,到底是詐尸還是另有隱情,我是刑警寧澤蹄胰,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布岳遥,位于F島的核電站,受9級(jí)特大地震影響裕寨,放射性物質(zhì)發(fā)生泄漏浩蓉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一宾袜、第九天 我趴在偏房一處隱蔽的房頂上張望捻艳。 院中可真熱鬧,春花似錦庆猫、人聲如沸认轨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽好渠。三九已至,卻和暖如春节视,著一層夾襖步出監(jiān)牢的瞬間拳锚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來泰國打工寻行, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留霍掺,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓拌蜘,卻偏偏與公主長得像杆烁,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子简卧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

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

  • nginx在工作中已經(jīng)有好幾個(gè)環(huán)境在使用了兔魂,每次都是重新去網(wǎng)上扒博客,各種編譯配置举娩,今天自己也整理一份安裝文檔和n...
    AndyChin閱讀 2,292評(píng)論 0 4
  • nginx做負(fù)載均衡器以及proxy緩存配置 關(guān)于nginx的安裝和基本配置請(qǐng)參考nginx析校,本文在原基礎(chǔ)上完成以...
    meng_philip123閱讀 1,582評(píng)論 1 16
  • 1.簡介: ? Nginx:engine X 构罗,2002年,開源智玻,商業(yè)版? http協(xié)議:web服務(wù)器(類似于ht...
    尛尛大尹閱讀 1,860評(píng)論 0 3
  • I/O模型Nginx介紹Nginx的安裝和目錄結(jié)構(gòu)Nginx的配置Nginx的編譯安裝 一遂唧、I/O模型 (一)I/...
    哈嘍別樣閱讀 889評(píng)論 0 4
  • 生活有望穿秋水的期待 也會(huì)有意想不到的驚喜 不管生活多久才變好 都要先把自己變得更好…… 周末愉快!
    二怪的媽閱讀 170評(píng)論 0 0