Apache-2.2
顯示帶有 RAND 種子的靜態頁面,到期了嗎?
在 Apache 中,是否有任何方法(使用 CGI 和 PHP 等腳本)可以獲取所有靜態內容(html、圖像和指定大小範圍內的文件)並將其作為隨機連結發送給使用者,設置為(例如 30 分鐘)到期?這最好不要使用 mod_proxy 或相反,因為所有文件都將位於同一伺服器上。我只是想學習一種合理的方法來製作這樣的東西:http ://www.example.com/09-21-2011/USA/CA/article-name.html顯示為http:// www.example.com/09-21-2011/USA/CA/randomnumbersandletters(沒有 .html)。我意識到可以使用 mod_rewrite 輕鬆修復 html 部分。
對此的任何幫助將不勝感激。
這裡有一個這樣的例子:http: //memory.loc.gov/frd/cs/httoc.html 點擊文章部分的任何連結,滾動到該頁面的底部。
說:
Do NOT bookmark these search results. Search results are stored in a TEMPORARY file for display purposes. The temporary file will be purged from our system in a few hours.
連結如下:
.../cgi-bin/query/r?randomnumbersandletters
可選功能是將臨時會話儲存在 SQL 數據庫中,並包括使用者 IP 和訪問時間/日期。
這不是系統管理問題,而是程式問題。
一種快速的貧民區解決方案算法:
- 建立會話
- 訪問頁面時,對該會話的某些表示以及 URL 欄中請求的頁面的某些表示進行編碼
- 如果訪問文件的會話已過期或從無效主機訪問,則拒絕該請求
類似的類似貧民窟的解決方案
memory.loc.gov
(實際上是從單獨的伺服器中提取數據並將其儲存在臨時位置)
- 建立會話
- 當請求一個文件時,看看我們是否已經在該會話的目錄中本地擁有它。
- 如果我們有文件,顯示它(重定向使用者或使用腳本語言讀取它)
- 如果我們沒有文件檢索它並將其粘貼在會話的臨時目錄中,則顯示如上。
- 當一個會話的臨時目錄沒有被訪問時
TIME_PERIOD
,刪除它。