瀏覽模式: 普通 | 列表

php安全性比較好的作法

CentOS + Apache + PHP 是我常用來建置web系統的環境

php也是最常見的、用來寫web應用程式的程式,所以它的安全性也是需要注意一下

我參考了 http://www.cyberciti.biz/tips/php-security-best-practices-tutorial.html 的文章,也整理了一下

一般php的環境設定是靠 ↓

/etc/php.ini : php 主要設定檔
/etc/php.d   : php 用來放額外的模組的地方,都是 XX.ini

我們查看 php 版本可以下 php -v

而查現在php 支援那些模組可下 php -m

以上也可以透過 web 瀏覽 phpinfo.php (內容是 <?php phpinfo()?> ,就可以看到更詳細資訊

[閱讀全文]

關閉apache與php版本顯示

目的:不想讓網頁頁面出現這樣子的錯誤訊息

Not Found

The requested URL /123 was not found on this server.
Apache/2.0.52 (CentOS) Server at 10.10.10.135 Port 80

關閉apache版本,vi /etc/httpd/conf/httpd.conf

ServerTokens OS # 找到這一行,將“OS”改為“Prod”
# 改為
ServerTokens Prod #  在出現錯誤頁的時候不顯示服務器操作繫統的名稱
ServerSignature On # 找到這一行,將“On”改為“Off”
# 改為
ServerSignature Off # 在錯誤頁中不顯示Apache的版本

關閉php版本,vi /etc/php.ini

expose_php = On

# 改為

expose_php = Off

重啟apache

[閱讀全文]

標籤: apache php

php 加速器有那些

  • mmcache
  • memcached
  • eAccelerator
  • Zend Optimizer
標籤: php 加速器

php4 與 php5 到底能不能共存 ?

是只有 Windows  才有辦法作到嗎 ?

網路上非~~~~常少看到介紹 Linux 的文章,

是有找到幾篇啦
http://wiki.cheyingwu.tw/ApacheHTTPServer/Apache2-PHP4-and-PHP5-coexist
http://www.howtoforge.com/apache2_with_php5_and_php4
http://www.digitalsandwich.com/archives/14-PHP5-and-PHP4-Running-on-SAME-apache-server.html

像 Plesk 這樣的軟體廠商,它的 Windwos 版本在它管理介面上有選項可以選擇是要用 PHP4 還是 PHP5,不過仍不是共存方式,

而 Plesk for Linux 就沒有這個選項了。
標籤: php php5 php4

PHP 程式效能優化的 40 條建議

當初在這 http://ssorc.tw/rewrite.php/read-574.html 引用了 php 寫作技巧,
這裡 http://plog.longwin.com.tw/programming/2008/02/05/php_optimizing_40_comment_2008 的 PHP 程式效能優化的 40 條建議,
可以看一下
標籤: php php 優化

當 php.ini 的 register_globals 值為 Off,如何在不更改 php.ini 的情況下更改預設值

測試環境

Fedora Core release 6 (Zod)

Apache

Server version: Apache/2.2.6 (Unix)

PHP 4.x

方式一
   vi /etc/httpd/conf/httpd.conf

<Directory /var/www/html/test>

[閱讀全文]

標籤: php

php 寫作技巧

Quote: http://blog.gslin.org/archives/2007/09/25/1318/
  • 不要再依賴 register_globalsregister_globals$_GET$_POST$_COOKIE 這三個的變數內容直接對應到全域變數。這在目前的 PHP4 與 PHP5 預設都是關閉的,但還是有文件書籍會「建議」你打開。在 PHP6 中,這個功能將直接消失。不過,還是可以透過 達到一樣的效果。
  • 不要使用 magic_quotes:這個功能在目前的 PHP4 與 PHP5 預設是開啟的,但在 PHP6 將會消失 (而非改為關閉),所以,在開發軟體時最好以 magic_quotes 關閉的情況下開發。
  • 不要使用 $HTTP_POST_VARS$HTTP_GET_VAR,改用 $_POST$_GET。這點可以用編輯器的字串代換很快的換完。就算真的是很多的程式碼,也可以一次換一些。
  • 使用 preg_*,而不要再用 ereg_*。現在就用 preg_* 是因為執行速度比 ereg_* 快,另外在 PHP6 將會廢掉 ereg_*。不過應該會有人寫出 PECL extensions 放回來。
  • 直接拿原作者的 code 比較清楚:
    $a = & new object(); // Do not do
    $a = new object(); // Do this as of PHP 6
標籤: php