Time of Update: 2017-01-18
Tengine是由淘寶網發起的Web伺服器項目。它在Nginx的基礎上,針對大訪問量網站的需求,添加了很多進階功能和特性。Tengine的效能和穩定性已經在大型的網站如淘寶網,天貓商城等得到了很好的檢驗。它的最終目標是打造一個高效、穩定、安全、易用的Web平台。Nginx的特性:1、基本的HTTP伺服器特性1.處理靜態檔案,索引檔案以及自動索引;開啟檔案描述符緩衝;2.使用緩衝加速反向
Time of Update: 2017-01-18
支援所有PS版本Get-ChildItem 不支援檔案進階篩選。它只能使用簡單的萬用字元,但不能使用Regex。圍繞這個問題,我們可以使用-match命令來篩選。下面這個例子將獲得所有windows目錄下包含至少連續有兩個數位檔案同時檔案名稱長度不超過8個字元:Get-ChildItem -Path $env:windir -Recurse -ErrorAction SilentlyContinue | Where-Object { $_.BaseName -match '\d{2}'
Time of Update: 2017-01-18
在上一篇文章:《Nginx if語句加Regex實現字串截斷》中, 我們介紹過了使用if來進行截斷字串的用法, 這次我們來瞭解下if的邏輯用法:什麼是邏輯用法呢, 就程式中的and、or關係, 就叫做邏輯了.NGINX支援if的 and 與 or 或者 && 與 || 嗎?答案是No.當你嘗試這樣配置, 重載nginx時, nginx會報出錯誤複製代碼 代碼如下: location = /test/
Time of Update: 2017-01-18
PowerShell遍曆檔案夾下的子檔案夾和檔案是一件很容易的事兒。Get-ChildItem這個cmdlet就有一個recurse參數是用於遍曆檔案夾的。PowerShell中,使用Get-ChildItem來擷取檔案夾下面的子檔案夾和檔案(當然,它的功能不僅於此)。然後我們可以使用ForEach-Object的cmdlet來迴圈遍曆下面的子物件。然後通過psiscontainer 屬性來判斷是檔案夾還是檔案。Get-ChildItem,擷取指定對象的所有子物件集合。舉例:複製代碼 代碼如下:
Time of Update: 2017-01-18
計算一個檔案夾下面的檔案個數是一件很容易的事情,但看到這篇文章之前,還從來沒有想過計算一下檔案個數還有這麼多學問在裡頭。我們這裡有兩種方法來計算檔案夾下的檔案個數,下面分別展示詳細的代碼來計算windows目錄下的檔案個數。1、使用Get-ChildItem來得到所有的子檔案夾和檔案,然後再選取出所有的檔案,再使用Measure-Object,最後再從Measure-Object的結果中使用Select-Object的ExpandProperty參數來計算出個數。聽起來就有點複雜,下面看看代碼吧
Time of Update: 2017-01-18
有的時候,小編需要一個隨便密碼。寫asp的時候,用asp產生,寫c#的時候用c#產生。PowerShell中可以使用c#,所以,可以把c#中產生隨機密碼方法套用給PowerShell。小編以前看System.Web.Security命名空間的時候,發現下面有一個Membership類,下面有一個靜態方法GeneratePassword(),使用它可以產生隨機密碼。參考MSDN網址:http://msdn.microsoft.com/en-us/library/system.web.securit
Time of Update: 2017-01-18
TimeSpan對象表示一個時間差,比如今天的10點10分,和明天的12點12分,就差1天2小時2分。這個“1天2小時2分”就是一個TimeSpan。這個東西有什麼用呢?小編之前在做一個小東西的時候,需要評估一下兩個不同的方法看哪個效率更高。於是小編在程式開始的時候,設定一個起始時間,在程式結束的時候再設定一個結束時間,然後兩個時間一相減,得到一個時間差,洪哥以時間差小者為優。下面是幾個使用TimeSpan對象的例子:建立一個TimeSpan對象,表示1天3小時複製代碼
Time of Update: 2017-01-18
nginx版本為1.1.19。若網域名稱由a.com轉移到了b.com,並對兩個網域名稱有所有權,可以: 複製代碼 代碼如下:server{ server_name a.com; return 301 $scheme://b.com$request_uri;}重啟伺服器,然後看一下成功與否: 複製代碼 代碼如下:curl -I
Time of Update: 2017-01-18
最近一個項目中使用了ThinkPHP做為開發架構,URL上我們使用了PATHINFO模式,但是Nginx預設是不支援PATHINFO的,需要進行手動設定才可以,於是我們按照了以下方法進行了Nginx的PATHINFO支援配置:修改nginx.conf,找到server中的 location ~ .php${},修改為location ~ .php {},並在其中增加以下內容:複製代碼 代碼如下:set $path_info "";set $real_script_name
Time of Update: 2017-01-18
1. nginx不緩衝原因預設情況下,nginx是否緩衝是由nginx快取服務器與原始伺服器共同決定的, 快取服務器需要嚴格遵守原始伺服器響應的header來決定是否緩衝以及緩衝的時常。header主要有如下:複製代碼 代碼如下:Cache-control:no-cache、no-store如果出現這兩值,nginx快取服務器是絕對不會緩衝的複製代碼 代碼如下:Expires:1980-01-01如果出現日期比目前時間早,也不會緩衝。2. 解決不緩衝方案2.1
Time of Update: 2017-01-18
今天工作需要,要給客戶提供一個patch的下載地址,於是想用nginx的瀏覽目錄功能來做,需要讓客戶看到指定一個目錄下的檔案清單,然後讓他自己來選擇該下載那個檔案;我們都知道在apache下可以配置訪問web伺服器的某個路徑時,自動顯示其目錄下面的檔案清單的,其實Nginx一點也不比apache弱,它當然也可以實現這個功能,而且還非常容易和簡單;主要用到autoindex 這個參數來開啟,其配置如下:複製代碼 代碼如下:location / { &
Time of Update: 2017-01-18
當今nginx的勁頭越來越猛,記得2011年版本才1.0.6,現在已經更新到了1.5.1,nginx的更新速度越來越快。一直想記錄一系列的nginx教程,處於各種原因沒去做.今年抽出時間完成平時工作上用到的nginx.後續將會以視頻教程的方式來做。當然,還是文章先出,下一篇文章將會講nginx虛擬機器主機配置。有什麼建議,望大家留言。1、必要軟體準備•安裝pcre為了支援rewrite功能,我們需要安裝pcreview sourceprint?# yum install pcre*
Time of Update: 2017-01-18
在centos上成功編譯安裝nginx 1.4、php 5.4並成功啟動nginx和php-fpm後,訪問php提示"File not found.",同時在錯誤記錄檔中看到:複製代碼 代碼如下:2013/10/22 20:05:49 [error] 12691#0: *6 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 192.168.16
Time of Update: 2017-01-18
找出指令碼之中的語法錯誤從來就不是輕鬆的事情,但是可以這樣去篩選:filter Test-SyntaxError{ $text = Get-Content -Path $_.FullName if ($text.Length -gt 0) { $err = $null $null = [System.Management.Automation.PSParser]::Tokenize($text, [ref] $err) if ($err) { $_ }
Time of Update: 2017-01-18
將nginx升級到1.2.4穩定版之後,會發現之前的vhost/*.conf中的日誌配置都報了如下的warn:複製代碼 代碼如下:nginx: [warn] the “log_format” directive may be used only on “http”
Time of Update: 2017-01-18
前幾天,一朋友出程式出問題卻怎麼查都沒看出問題,於是讓我幫它看看。其實它是ajax請求了很多個模板,然後把模板寫到頁面中。關鍵是所有請求的頁面都是200正常狀態代碼返回,表面上看沒什麼問題,實際上有些請求雖然返回200狀態代碼,但給回的狀態代碼是200。WebServer是nginx,直接告訴我應該他們配置了nginx的404錯誤頁面,雖然請求不存在的資源可以成功返回404頁面,但返回狀態代碼確是200。404.html複製代碼 代碼如下:This is 404 page.請求一個不存在的頁面:
Time of Update: 2017-01-18
本文講述了製作nginx的RPM包的方法,執行個體如下:1. 下載nginx源碼,直接運行命令:cd /rootwget http://nginx.org/download/nginx-1.7.1.tar.gz在拿到源碼包之後,解壓,並進入目錄:tar zxvf nginx-1.7.1.tar.gzcd nginx-1.7.12. 編寫SPEC檔案檔案名稱為:nginx.specSummary: High Performance Web ServerName: nginxVersion: 1.7
Time of Update: 2017-01-18
nginx的配置中不支援if條件的邏輯與/邏輯或運算 ,並且不支援if的嵌套文法,我們可以用變數的方式來實現:首先是虛擬碼(即不被nginx支援),寫在這裡只是為了方便理解:複製代碼 代碼如下:if ($remote_addr ~ "^(12.34|56.78)" && $http_user_agent ~* "spider") { return 403; }下面這是等效的,並真實可用的配置複製代碼 代碼如下:set $flag 0; if
Time of Update: 2017-01-18
這個是網易新聞的主介面,我們知道底部可以用tabhost實現,這個很容易,我們在其他軟體中也會經常用到。 至於頂部的滑動條,個人感覺還是比較漂亮的所以今天也模仿了下,網易頂部滑動條的效果,由於初次模仿這種效果,可能有些地方還不夠完美,不過基本已經實現,希望大家能夠喜歡。 廢話不多說,下面上代碼: 首先是布局layout下的main.xml 複製代碼 代碼如下: <?xmlversion="1.0"encoding="utf-8"?>
Time of Update: 2017-01-18
對於大量新增虛擬機器主機的需求,Apache 有 vhost_alias 模組幫忙。Nginx 呢?其實神馬都不需要,同樣可以實現 Nginx 次層網域匹配子檔案夾,且不匹配 "www",但可以匹配包含 "www" 的子網域名稱。首先看看目前網上搜到的方法。複製代碼 代碼如下:if ( $host ~* (.*)\.(.*)\.(.*)) { set $subdomain $1;}location / { root