91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx中通過配置http服務器實現動靜分離)

發布時間:2021-06-18 18:18:31 來源:億速云 閱讀:193 作者:Leah 欄目:大數據

這篇文章給大家介紹nginx中通過配置http服務器實現動靜分離),內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

安裝

  •     我下載的是1. 14.2 如圖

nginx中通過配置http服務器實現動靜分離)

配置介紹

nginx.conf配置文件

Nginx配置文件主要分成四部分:main(全局設置)、server(主機設置)、upstream(上游服務器設置,主要為反向代理、負載均衡相關配置)和 location(URL匹配特定位置后的設置),每部分包含若干個指令。main部分設置的指令將影響其它所有部分的設置;server部分的指令主要用于指定虛擬主機域名、IP和端口;upstream的指令用于設置一系列的后端服務器,設置反向代理及后端服務器的負載均衡;location部分用于匹配網頁位置(比如,根目錄“/”,“/images”,等等)。他們之間的關系式:server繼承main,location繼承server;upstream既不會繼承指令也不會被繼承。它有自己的特殊指令,不需要在其他地方的應用。

#main全局配置{
   #events模塊
   #http模塊{
      #server配置(重點)
   }


}

詳細配置如下

#main全局配置


user  www www;       #指定nginx進程使用什么用戶啟動
worker_processes 4;  #指定啟動多少進程來處理請求,一般情況下設置成CPU的核數,如果開啟了ssl和gzip更應該設置成與邏輯CPU數量一樣甚至為2倍,可以減少I/O操作。使用grep ^processor /proc/cpuinfo | wc -l查看CPU核數。
worker_cpu_affinity 0001 0010 0100 1000; #在高并發情況下,通過設置將CPU和具體的進程綁定來降低由于多核CPU切換造成的寄存器等現場重建帶來的性能損耗。如worker_cpu_affinity 0001 0010 0100 1000; (四核)。
error_log /data/logs/nginx_error.log crit; #error_log是個主模塊指令,用來定義全局錯誤日志文件。日志輸出級別有debug、info、notice、warn、error、crit可供選擇,其中,debug輸出日志最為最詳細,而crit輸出日志最少。
#pid /usr/local/webserver/nginx/nginx.pid; #指定進程pid文件的位置。worker_rlimit_nofile 65535;: 用于指定一個nginx進程可以打開的最多文件描述符數目,這里是65535,需要使用命令“ulimit -n 65535”來設置。




#events模塊
events{
  use select;        #use是個事件模塊指令,用來指定Nginx的工作模式。Nginx支持的工作模式有select、poll、kqueue、epoll、rtsig和/dev/poll。其中select和poll都是標準的工作模式,kqueue和epoll是高效的工作模式,不同的是epoll用在Linux平臺上,而kqueue用在BSD系統中。對于Linux系統,epoll工作模式是首選。在操作系統不支持這些高效模型時才使用select。
  worker_connections      65536;  #每一個worker進程能并發處理(發起)的最大連接數(包含與客戶端或后端被代理服務器間等所有連接數)。nginx作為反向代理服務器,計算公式 最大連接數 = worker_processes * worker_connections/4,所以這里客戶端最大連接數是65536,這個可以增到到8192都沒關系,看情況而定,但不能超過后面的worker_rlimit_nofile。當nginx作為http服務器時,計算公式里面是除以2。進程的最大連接數受Linux系統進程的最大打開文件數限制,在執行操作系統命令ulimit -n 65536后worker_connections的設置才能生效。
}




#http服務器
http
{
  include       mime.types; #include是個主模塊指令,實現對配置文件所包含的文件的設定,可以減少主配置文件的復雜度。類似于Apache中的include方法。
  default_type  application/octet-stream; #default_type屬于HTTP核心模塊指令,這里設定默認類型為二進制流,也就是當文件類型未定義時使用這種方式,例如在沒有配置PHP環境時,Nginx是不予解析的,此時,用瀏覽器訪問PHP文件就會出現下載窗口。
  #charset  gb2312; #charset gb2312; 指定客戶端編碼格式。
#HTTP參數之客戶端head緩存
    server_names_hash_bucket_size 128; #服務器名字的hash表大小。
	client_header_buffer_size 32k;     #用來指定來自客戶端請求頭的header buffer 大小。對于大多數請求,1K的緩存已經足夠了,如果自定義了消息頭或有更大的cookie,可以增大緩存區大小。
	large_client_header_buffers 4 128k;#用來指定客戶端請求中較大的消息頭的緩存最大數量和大小,4為個數,128k為大小,最大緩存為4個128KB。
	client_max_body_size 10m; 		   #客戶端請求的最大的單個文件字節數。 允許客戶端請求的最大單文件字節數。如果有上傳較大文件,請設置它的限制值
	client_body_buffer_size 128k;  	   #緩沖區代理緩沖用戶端請求的最大字節數。
	sendfile on ; 					   #開啟高效文件傳輸模式,sendfile指令指定nginx是否調用sendfile函數來輸出文件,減少用戶空間到內核空間的上下文切換。對于普通應用設為 on,如果用來進行下載等應用磁盤IO重負載應用,可設置為off,以平衡磁盤與網絡I/O處理速度,降低系統的負載。
	#sendfile on ; 					   #開啟 tcp_nopush on; 和tcp_nodelay on; 防止網絡阻塞。
	tcp_nopush on;					   #
	tcp_nodelay on;
	keepalive_timeout 65 :             #長連接超時時間,單位是秒,這個參數很敏感,涉及瀏覽器的種類、后端服務器的超時設置、操作系統的設置,可以另外起一片文章了。長連接請求大量小文件的時候,可以減少重建連接的開銷,但假如有大文件上傳,65s內沒上傳完成會導致失敗。如果設置時間過長,用戶又多,長時間保持連接會占用大量資源。
	client_body_timeout 60s;           #用于設置客戶端請求主體讀取超時時間,默認是60s。如果超過這個時間,客戶端還沒有發送任何數據,nginx將返回Request time out(408)錯誤。
	send_timeout 60s;				   #用于指定響應客戶端的超時時間。這個超時僅限于兩個連接活動之間的時間,如果超過這個時間,客戶端沒有任何活動,Nginx將會關閉連接。
#HTTP參數之FastCGI參數
	fastcgi_connect_timeout 300;       #指定連接到后端FastCGI的超時時間。
	fastcgi_send_timeout 300;          #指定向FastCGI傳送請求的超時時間,這個值是已經完成兩次握手后向FastCGI傳送請求的超時時間。
	fastcgi_read_timeout 300;  		   #指定接收FastCGI應答的超時時間,這個值是已經完成兩次握手后接收FastCGI應答的超時時間。
	fastcgi_buffer_size 64k;  		   #用于指定讀取FastCGI應答第一部分需要多大的緩沖區,這個值表示將使用1個64KB的緩沖區讀取應答的第一部分(應答頭),可以設置為fastcgi_buffers選項指定的緩沖區大小。
	fastcgi_buffers 4 64k;  		   #指定本地需要用多少和多大的緩沖區來緩沖FastCGI的應答請求。如果一個PHP腳本所產生的頁面大小為256KB,那么會為其分配4個64KB的緩沖區來緩存;如果頁面大小大于256KB,那么大于256KB的部分會緩存到fastcgi_temp指定的路徑中,但是這并不是好方法,因為內存中的數據處理速度要快于硬盤。一般這個值應該為站點中PHP腳本所產生的頁面大小的中間值,如果站點大部分腳本所產生的頁面大小為256KB,那么可以把這個值設置為“16 16k”、“4 64k”等。
	fastcgi_busy_buffers_size 128k;    #默認值是fastcgi_buffers的兩倍。
	fastcgi_temp_file_write_size 128k; #表示在寫入緩存文件時使用多大的數據塊,默認值是fastcgi_buffers的兩倍。 
	fastcgi_cache TEST;  			   #示開啟FastCGI緩存并為其指定一個名稱。開啟緩存非常有用,可以有效降低CPU的負載,并且防止502錯誤的發生。但是開啟緩存也會引起很多問題,要視具體情況而定。
	fastcgi_cache_path /usr/local/nginx/fastcgi_cache levels=1:2 keys_zone=TEST:10m inactive=5m;   #FastCGI緩存指定一個文件路徑、目錄結構等級、關鍵字區域存儲時間和非活動刪除時間。
	fastcgi_cache_valid 200 302 1h;    #用來指定應答代碼的緩存時間。實例中的值表示將200和302應答緩存一個小時,將301應答緩存1天,其他應答均緩存1分鐘。
	fastcgi_cache_valid 301 1d;  
	fastcgi_cache_valid any 1m;
#HTTP參數之gzip模塊設置
	gzip on; 							#開啟gzip壓縮輸出
	gzip_min_length 1k;					#最小壓縮文件大小,頁面字節數從header頭的Content-Length中獲取。默認值為0,不管多大頁面都壓縮,建議設置成大于1K的字節數,小于1K可能會越壓越大。
	gzip_buffers    4 16k;				#壓縮緩沖區,表示申請四個16K的內存作為壓縮結果流緩存,默認是申請與原始數據大小相同的內存空間來存儲gzip壓縮結果。
	gzip_http_version 1.1;				#用于設置識別HTTP協議版本,默認是1.1,目前主流瀏覽器都已成指出。(默認1.1,前端如果是squid2.5請使用1.0)
	gzip_comp_level 6;					#壓縮等級,1壓縮比最小,處理速度最快,9壓縮比最大,傳輸速度快,但是消耗CPU資源。
	gzip_types text/html text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml; #壓縮類型,默認就已經包含text/html,所以下面就不用再寫了,寫上去也不會有問題,但是會有一個warn。
	gzip_vary on;  						#和http頭有關系,會在響應頭加個 Vary: Accept-Encoding ,可以讓前端的緩存服務器緩存經過gzip壓縮的頁面,例如,用Squid緩存經過Nginx壓縮的數據。
	gzip_proxied any;					#Nginx作為反向代理的時候啟用,決定開啟或者關閉后端服務器返回的結果是否壓縮,匹配的前提是后端服務器必須要返回包含”Via”的 header頭。
	
  
#server配置
  server
  {
		listen 80 default; 						#監聽端口,默認80,小于1024的要以root啟動。可以為listen *:80、listen 127.0.0.1:80等形式。
		server_name localhost;	 				# 服務器名,如localhost、www.example.com,可以通過正則匹配。
		index index.html index.htm index.php;	
		root /data/htdocs/www;                  #定義服務器的默認網站根目錄位置。如果locationURL匹配的是子目錄或文件,root沒什么作用,一般放在server指令里面或/下。
		index index.jsp index.html index.htm  	#定義路徑下默認訪問的文件名,一般跟著root放。
		#server_name_in_redirect off;
		location ~ .*\.(php|php5)?$
		{
		  #fastcgi_pass  unix:/tmp/php-cgi.sock;
		  fastcgi_pass  127.0.0.1:9000;
		  fastcgi_index index.php;
		  include fcgi.conf;
		}
		location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
		{
		  expires      30d;
		}
		location ~ .*\.(js|css)?$
		{
		  expires      1h;
		}
    }  
  
}

配置HTTP服務器(nginx代理)

worker_processes  1;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;
				root D:/root;//重點配置,這里為根目錄路由位置
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

上面代碼監聽80端口
http服務目錄為 D:/root  http服務目錄為。

如果配置 index index.html;  輸入localhost 默認訪問 localhost/index.html   index 只支持網頁不支持圖片及視頻。

啟動nginx

由于沒有配置環境變量,到nginx根目錄運行dos命里。

     啟動:nginx   或者雙擊nginx.exe

     關閉: nginx -s stop 或者(任務管理器kill掉nginx進程)

啟動后在瀏覽器輸入:localhost,能夠加載出歡迎界面說明正常啟動成功了

nginx中通過配置http服務器實現動靜分離)

nginx中通過配置http服務器實現動靜分離)

關于nginx中通過配置http服務器實現動靜分離)就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

固始县| 瓦房店市| 鸡西市| 舟山市| 普陀区| 阿鲁科尔沁旗| 辉南县| 淮南市| 勃利县| 斗六市| 麻城市| 孝义市| 澄迈县| 翁源县| 酒泉市| 侯马市| 郴州市| 台北市| 榆树市| 潢川县| 遂宁市| 白水县| 西宁市| 晋城| 杭锦旗| 海安县| 伊春市| 长白| 沙雅县| 改则县| 道孚县| 周口市| 武陟县| 阿拉善右旗| 兰溪市| 道真| 社旗县| 乌拉特后旗| 宁武县| 内江市| 武强县|