国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

加固PHP環境(轉)

2024-05-04 23:00:17
字體:
來源:轉載
供稿:網友
作者:albert

  php作為apache的模塊運行時,apache本身的安全起主導作用,因此如果配置正確的話,php應該是一個十分安全的環境,但是如果php是以cgi方式來運行的話,就沒有這么安全了。

  本文中提到的操作,對unix和windows都適用。

  一、作為apache模塊來運行

  因為一般說來,apache會以“nobody”或者“www”來運行,所以,php作為模塊是十分安全的。

  如果php在虛擬主機環境下,可能會產生用戶能瀏覽其他用戶文件的危險。一個簡單的腳本如下:

  
  // 假定文檔根位于 /usr/local/websites/mydomain

  $location = ../; // 到上一級目錄
  $parent = dir($location);

  // 顯示當前目錄: /usr/local/websites
  while($entry = $parent->read()) {
  echo $entry .
;
  }
  $parent->close();
  ?>

  這樣,只要修改$location,用戶就可以瀏覽虛擬主機上所有其他用戶的文件了。為了減少這樣的危險,我們需要看一下php.ini ,修改其中的safe_mode, doc_root和usr_dir 參數,把用戶限制在他自己的虛擬主機環境下:

  safe_mode = on
  doc_root = /usr/local/apache/htdocs
  user_dir = /home/albertxu/htdocs

  二、作為cgi

  把php以cgi方式運行需要十分小心,可能會泄露你不想讓人知道的信息。

  第一件事情要注意的就是一定要把執行文件放到文檔根目錄以外的地方。例如/usr/local/bin,因此所有的cgi文件開頭必須帶有:

  #!/usr/local/bin/php

  防止用戶直接調用cgi的辦法是在apache中強迫cgi重定向:

  action php-script /cgi-bin/php.cgi
  addhandler php-script .php

  這會把下面的url

  http://example.com/mywebdir/test.htm

  轉換為:

  http://example.com/cgi-bin/php/mywebdir/test.htm

  在以cgi方式編譯php時,最好采用下面的選項:

  --enable-force-cgi-redirect

  本文討論的是有關php的安全問題,詳細的安全信息可以參考php老家上手冊中關于安全的

  http://www.php.net/manual/en/security.php

  那一章。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云梦县| 收藏| 贵德县| 富裕县| 宜黄县| 澳门| 读书| 开化县| 和田县| 应城市| 渭南市| 会理县| 嘉义县| 通江县| 鹤山市| 奉化市| 大名县| 中宁县| 错那县| 桂林市| 双流县| 庆云县| 曲麻莱县| 龙山县| 石屏县| 全椒县| 抚宁县| 福海县| 莱西市| 墨玉县| 武冈市| 泉州市| 抚顺市| 宝鸡市| 汝南县| 福海县| 比如县| 桑日县| 盈江县| 柯坪县| 佛冈县|