以前用CAS一直是用java的客戶端,今天想把自己的phpMyAdmin集成到中心認證系統中,這樣就不需要到apache的目錄中用access文件去控制了.
在集成phpCAS的時候,系統報出一些錯誤:
Warning: include_once(DB.php) [
function.include-once]: failed to open stream: No such file or directory in
/opt/httproot/phpMyAdmin/cas/PGTStorage/pgt-db.php on line
11
Warning: include_once() [
function.include]: Failed opening 'DB.php' for inclusion (include_path='.:/usr/local/php-5.2.5/lib/php') in
/opt/httproot/phpMyAdmin/cas/PGTStorage/pgt-db.php on line
11
Warning: session_start() [
function.session-start]:
Cannot send session cookie - headers already sent by (output started at
/opt/httproot/phpMyAdmin/cas/PGTStorage/pgt-db.php:11) in
/opt/httproot/phpMyAdmin/cas/client.php on line
489
Warning: session_start() [
function.session-start]:
Cannot send session cache limiter - headers already sent (output
started at /opt/httproot/phpMyAdmin/cas/PGTStorage/pgt-db.php:11) in
/opt/httproot/phpMyAdmin/cas/client.php on line
489
Warning: Cannot modify header information - headers already sent
by (output started at
/opt/httproot/phpMyAdmin/cas/PGTStorage/pgt-db.php:11) in
/opt/httproot/phpMyAdmin/cas/client.php on line
880
查了些資料,重新安裝了php后問題解決:
1.在編譯php的時候,要加上--with-curl, --with-openssl, --with-dom, --with-zlib這些選項
如果系統中還沒有安裝curl包:
wget http://curl.haxx.se/download/curl-7.18.1.tar.gz
tar -zxvf curl-7.18.1.tar.gz
./configure --prefix=/usr/local/curl
make
sudo make install
編譯安裝php:
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml-2.6.30/ --with-gd=/usr/local/gd-2.0.35/ --with-curl=/usr/local/curl/ --with-openssl --with-zlib --with-pear=/usr/local/php_pear
make
make test
sudo make install
注意,有可能pear安裝不成功,要看你下載的php包,安裝完后到php源代碼目錄下的pear下看看是有有錯,否則,要現下載一個pear的安裝包:
wget http://pear.php.net/install-pear.phar
再執行make,make install
2.安裝PEAR:DB
cd /usr/local/php/bin
pear install DB
3.測試phpCAS
把phpCAS包里的example_simple.php以及source目錄里的所有文件拷貝到一個可以從apapche執行php文件的目錄中
然后訪問http://host/dir/example_simeple.php
結果頁面轉向到https://sso-cas.univ-rennes1.fr的中心認證地址,說明phpCAS安裝成功。