Re: [閒聊] 線上使用者的作法..

看板PHP作者 (守護神)時間16年前 (2007/09/23 08:57), 編輯推噓3(303)
留言6則, 3人參與, 最新討論串4/5 (看更多)
※ 引述《roga (凝視)》之銘言: : 小弟的上個問題是為了最近寫的一個小玩具 ( http://stat.lab3.tw/ ) : 不過現在又遇到了瓶頸,主要問題是在於「密碼重設」的部份。 : 現在的密碼重設方法是讀取遠端特定網頁,如果該網頁標題有含指定的字串, 密碼重設 為啥需要去抓遠端網頁標題? : 就當作通過認證,並且可以修改密碼。 : 我用的方法是 : $encode_string = '<title>' . $encode_string; : ^^^^^^^ 加上這個是為了防止被亂田在網頁的其他地方 : $long_string = file_get_contents(urldecode($url)); : if(eregi($match_string ,$long_string)) { 開始做事 } : 但是這似乎有危險,我擔心如果有人留下含有 $encode_string 的 comment : 這樣或許可能會出現問題,儘管機率不高。 : 想請問各位長輩,是否有更好的建議? : 或是在比對字串的時候,有無更有效率的方法 @_@ : 還有,用 file_get_contents 操作,必須把 php.ini 裡面的選項打開 (預設 : 好像就是開的),我在想有沒有比較簡單好用 (最好是 native) 的方法, : 可以取得遠端網頁的內容,然後只取前面的一些 bytes ,這樣或許可以降低 : 誤判的機率 (因為 Title 都在網頁最前面幾行,估計 30 行以內) function getRemoteTitle($url){ $fr=@fopen($url,"r"); if(!$fr)return false; $content=''; while(($line=fgets($fr))!=false){ content.=trim($line); if(preg_match('/<title\s*>[^<]*<\/title>/i',$line) || strstr(strtolower($line),'</title>')){ break; } } fclose($fr); preg_match('/<title\s*>[^<]*<\/title>/i',$content,$matches); if(isset($matches[0][1]))return $matches[0][1]; else return false; } : 另外我想請教,在 Apache 中, : MaxClients : 語法:MaxClients <數量> : 預設:MaxClients 150 : MaxClients 用於設定同時能夠提供給使用者的最大服務請求數目。 : == : MaxClients 和 MaxKeepAliveRequests 這兩者有何不同? MaxClients 伺服器啟動時要啟動多少個 httpd 來等待連接 在 apache2 預設值裡,每多一個大約會多使用 20~40MB 對於同時連線人數越多的站是開越多越好 MaxKeepAliveRequests 只有在 KeepAlive On 時才有效 KeepAlive 是說在一個 httpd 每處理完一個 MaxRequestsPerChild 後要不要繼 續等待下一個子請求,所以 MaxKeepAliveRequests 就是指定每個 httpd 在等 待期間可以處理多少個子請求 : MaxClients 是指對 Unique IP 而言嗎? : MaxKeepAliveRequests 是同一個 IP 所能發出的 Request 嗎? : 感謝。 : == : 另外 : MinSpareServers 5 : -> 設定最少閒置等待服務的伺服程序數量 : MaxSpareServers 10 : -> 最大 : 這些是 fork 出來的 child 吧? : 請問這個數字對效能有沒有影響? : 以及這個數字會不會影響到 Server 啟動數量的最大數量呢? 這兩個是指備用的 httpd 數量,也就是除了被用掉的以外還要開啟多少個 當然一定會影響效能囉 對於載入多個 mod 的 apache httpd 而言,每要啟動一個 httpd 是要花上很多 時間(約莫 3~8 seconds),所以設置一些備用的減少當使用者連結上時需要等待 httpd 啟動的時間 : == : 以及對於 DDoS 有沒有辦法從 Apache 來防止.. mod_evasive -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.158.15

09/23 10:52, , 1F
謝謝學長 ^^ ~因為註冊的時候,只要帳號密碼.其他資訊都沒有
09/23 10:52, 1F

09/23 10:54, , 2F
所以..才會要求填在標題..以證明網站是屬於對方的~~
09/23 10:54, 2F

09/23 20:03, , 3F
REFER
09/23 20:03, 3F

09/23 20:50, , 4F
Referer 可以變造,附帶一提,Google Sitemaps 和 Yahoo!
09/23 20:50, 4F

09/23 20:52, , 5F
Explorer 是採用要求使用者新增一個 <meta/> 來辨識
09/23 20:52, 5F

09/24 00:41, , 6F
樓上我知道,但是 blog 的用很難增加一個 meta tag XDDD
09/24 00:41, 6F
文章代碼(AID): #16zRdkp1 (PHP)
討論串 (同標題文章)
文章代碼(AID): #16zRdkp1 (PHP)