簡體   English   中英

使用PHP安全使用動態HTML樣式表嗎?

[英]Safe to use dynamic HTML stylesheets using PHP?

我已經了解了使用PHP的預處理程序允許動態HTML樣式表的技術,但是我一直在想這種技術的安全性,以及是否出於某種原因不鼓勵使用。

例如,代替使用典型的:

 <link rel="stylesheet" type="text/css" href="http:mysite.com/style.css/>

我可以使用:

 <link rel="stylesheet" type="text/css" href="http:mysite.com/style.php/>

你怎么看?

很好

我建議盡管在PHP中設置以下標頭:

Header(“ Content-Type:text / css”);

如果可以使用.htaccess文件,則可以使用以下命令將其設置為將* .css文件解析為PHP:

AddHandler application/x-httpd-php .css

然后,您可以直接在* .css文件中使用PHP。

還要確保將header類型也設置為text/css就像其他人提到的那樣:

header('Content-type: text/css');

它僅與您放入style.php中的代碼一樣安全。

是的,您可以使用PHP生成樣式表。 通過發送同時指定媒體類型和字符編碼的適當Content-Type值,確保將輸出正確聲明為CSS。

但是請注意,為每個請求生成樣式表會花費額外的時間和資源。 因此,您應該添加某種緩存機制(靜態文件和HTTP緩存 )以減少服務器負載,甚至減少不必要的請求。

正如其他人提到的那樣,PHP可用於輸出任何類型的文本。 因此,輸出動態CSS(甚至動態JavaScript)不是問題。 請注意,盡管這樣做會增加服務器負載。 服務器將必須啟動PHP引擎以提供原本為簡單靜態.css文件的文件。

您可以使用PHP(及其他東西)(包括CSS)渲染任何類型的文本輸出,只需確保為標題提供了正確的header('Content-Type: text/css; charset=iso-8859-1'); (或其他任何字符集)。

但老實說,我想不出一種情況,是否有必要以這種方式使用動態樣式表。

暫無
暫無

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

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