簡體   English   中英

Apache 緩存請求 URL 嗎?

[英]Is Apache caching request URLs?

我坐在這里試圖為我的新站點找到一種解決 URL 重寫的方法。 這將是一個完全基於 AJAX 的站點,其中 URL 在 90% 的 URL 中都不重要。

在 Chrome 中按 F12 並轉到網絡后,我開始監視響應性,因為我更改了 .htaccess 中的參數。

我發現當輸入一個服務器重啟后沒有看到的地址時,處理請求需要花費80-100ms(等待時間)。 這是在本地主機上運行的。 這發生在更改 GET 請求的動態部分 ?id=changeThis 和輸入新的 URL 時,如 /id/changeThis.. 然而,下一次,它需要 8-12 毫秒來處理......

如果我使用^(.*)將所有請求重定向到 index.php 沒有影響。

問題:如果我使用^([a-zA-Z\\-/]*) (注意沒有句號)來使像 main.css 這樣的靜態文件不被重寫,是否會在更大的范圍內發生,或者最好把所有靜態文件夾中的文件(因此靈活性較差),並且仍然使用^(.*)重定向不在靜態異常文件夾中的所有請求。 (我在想這里的速度。)

問題:任何人都可以認可我的發現嗎? Apache 是否真的“緩存”了請求,以便對特定 URL 的第一個請求需要時間來處理?

從 Apache 配置中禁用 mod_cache。 在我的配置中,它默認啟用。

回答您的問題:

使用更少的子句和更簡單的正則表達式處理會更快 - 但我們正在談論幾個毫秒的順序。

Apache 不會按照您的想法緩存請求 - 但是,您的 linux 系統可能正在緩存文件,因此后續加載速度更快。 我認為這就是您所看到/想到的 - apache 和網站文件都以頁面的形式緩存在操作系統中,以便更快地訪問。 重新啟動應該會使這些頁面變臟並需要重新加載它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM