首頁 > 後端開發 > php教程 > PHP安裝問題_PHP教程

PHP安裝問題_PHP教程

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-07-21 16:11:37
原創
852 人瀏覽過


安裝
這節將講述安裝過程中最常見的問題。 PHP 適用於 幾乎任何的 OS (或許 OSX 之前的 MacOS 除外 ), 和幾乎任何的WEB 伺服器。
要安裝PHP, 跟著 發行版裡的安裝 檔案的指引. Windows 使用者也應該讀install.txt 檔案. 這兒也有一些幫助文件 。 1. Unix/Windows: 我的php.ini 應該放在哪裡? 2. Unix: 我安裝了PHP, 但我每次加載一個文檔, 會得到下面的消息: 'Document Contains No Data'! 怎麼回事? 3. Unix: 我使用RPMS 安裝PHP , 但Apache 不支援PHP頁面! 怎麼辦? 4. Unix: 我使用RPMS 安裝PHP 3 , 但是它沒有我需要的資料庫編譯支援! 我該怎麼辦? 5. Unix:我用FrontPage 擴充包對Apache打了補丁, 忽然PHP 停止工作。 是PHP 和 Apache FrontPage 套件不相容嗎 ? 6. Unix/Windows: 我安裝了PHP,但在瀏覽器裡看我的PHP頁面時,空白一片。 7. Unix/Windows: 我安裝了PHP,但在瀏覽器裡看我的PHP頁面時,我得到一個server 500 error. 8. 某些作業系統: 我安裝PHP沒出錯,可是我啟動Apache時,得到一個undefined symbol errors: [mybox:user /src/php4] root# apachectl configtest apachectl: /usr/local/apache/bin/httpd Undefined symbols:  _compress  _uncompress9. Windows: 我安裝了PHP,但在瀏覽器裡看得到我的PHP.如下錯誤: cgi error: The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:10. Windows: 我嚴格按照install的要求,可是還是不能讓我的php在IIS下工作。
1. Unix/Windows: 我的php.ini 檔案該放在哪裡?
UNIX下預設它應該放在 /usr/local/lib 目錄下。 這是它的 /lib. 很多人會在編譯時改變它,使用--with-config-file-path 標誌。 例如, 你可以這樣設它: --with-config-file-path=/etc然後你可以複製原始程式包裡的 php.ini-dist 到 /etc/php.ini ,編輯它滿足你的本地化需求。
Windows下php.ini預設的路徑是Windows 系統目錄. 如果你在使用Apache webserver, php.ini 則最先在Apaches 安裝目錄下被查找, 例如: c:program filesapache groupapache. 這樣你可以有不同的php.ini 對應不同版本的Apache(同一台機器上)。
更多細節請查閱configuration file.
2. Unix: 我安裝了PHP, 但我每次加載一個文檔, 會得到下面的消息: 'Document Contains No Data'! 怎麼回事?
這可能是因為你的PHP 發生了core-dumping錯誤。 尋找你的伺服器錯誤日誌文件,看看是否屬於這種情況。 然後報告這個錯誤。如果你知道怎麼使用 'gdb',你可以提供一個 backtrace 在你的錯誤報告裡。這將會對開發人員解決 這個問題有很大幫助。如果你是在將PHP當作Apache模組使用,那麼請按下面的步驟做:

停止 httpd 進程
gdb httpd
停止 httpd 進程
> run -X -f /path/to/httpd.conf
瀏覽你剛才出錯的 URL
> run -X -f /path/to/httpd.conf
如果你還有 core dump, gdb 現在會通知你
打入: bt
在你的 bug report裡應該要包含backtrace 。 這些會被發送到http://bugs.php.net/

如果你的腳本使用了正規表示式函數(ereg() and friends), 你應該確保你編譯PHP 和Apache 用的是同一個正規表示式包。 在 PHP 和 Apache 1.3.x 這個過程是自動進行的。
3. Unix: 我使用RPMS 安裝PHP , 但Apache 不支援PHP頁面! 怎麼辦?
假設你安裝了Apache 和PHP(從RPM ) , 你需要反註解或增加一些行在你的http .conf 檔案裡: # Extra ModulesAddModule mod_php.cAddModule mod_php3.cAddModule mod_perl.c# Extra ModulesLoadModule php_module           /* for PHP 3 */LoadModule php4_module        modules/libphp4.so     /* for PHP 4 */LoadModule perl_ule   /libperl.soAnd add: AddType application/x-httpd-php3 .php3    /* for PHP 3 */AddType application/x-httpd-php .php      /* for PHP 4 */... 到全域域裡, 或到你想要的支援PHP的虛擬域裡。
4. 我使用RPMS 安裝PHP 3 , 但是它沒有我需要的資料庫選項支援! 我該怎麼辦?
因為PHP 3 內建支援的關係, 編譯一個完整的可適於所有應用的PHP RPM是相當困難的。 在 PHP 4有談到這一點。 對 PHP 3, 我們只好建議你使用INSTALL.REDHAT (在 PHP包裡)描述的機制。如果你一定要使用RPM 版的PHP 3, 讀...
RPM 套件管理器設定RPMS 簡單的安裝,不帶資料庫支援and 因為RPMS 使用/usr/ 而不是標準的/usr/local/ 目錄存放文件. 你需要告訴RPM 檔案你要支援哪種資料庫以及它們的最上級目錄的位置。
下面的例子將解釋在Apache模式下怎樣支援通行的資料庫Mysql.
當然所有的這些可以稍作修改,以支援其它的PHP支援的資料庫。我們假設你安裝了 MySQL and Apache ,完全是用 RPMS 安裝的。

首先,移去 mod_php3 : rpm -e mod_php3
然後取得rpm包並安裝, 不是 --重編譯 rpm -Uvh mod_php3-3.0.5-2.src.rpm
編輯/usr/src/redhat/SPECS/mod_php3.spec 檔案
在 %build 一節裡增加你想要的資料庫支援, 以及路徑資訊。
對 MySQL 你應該要增加: --with-mysql=/usr %build 節看起來像: ./configure --prefix=/usr     --with-apxs=/usr/sbin/apxs     --with-config-file-path=/usr/lib     --enable-debug=no   -with-exec-dir=/usr/bin     --with-mysql=/usr     --with-system-regex
改動完成後,像下面這樣重編rpm : rpm -bb /usr/src/redhat/SPECS/mod_php3.spec
Then install the rpm rpm -ivh /usr/src/redhat/RPMS/i386/mod_php3-3.0.5-2.i386.rpm重啟 Apache,你已經得到了rpm下的Mysql的支援。 注意到這種做法比你重新得到一個 PHP 3 的tarball 程式碼,按照 INSTALL.REDHAT 的指引一步一步做要容易得多。

5. Unix: 我用 FrontPage 擴充包對Apache打了補丁, 忽然 PHP 停止工作。 是PHP 和 Apache FrontPage 套件不相容嗎 ?
不是, PHP 和 FrontPage擴充包運作得很好.。問題是FrontPage 套件修改了幾個Apache 結構參數,而PHP要用到它們.在FrontPage擴充包被打上後, 重新編譯 PHP (使用 'make clean ; make') ,會解決這個問題。
6. Unix/Windows: 我安裝了PHP,但在瀏覽器裡看我的PHP頁面時,空白一片。
在瀏覽器裡用'查看原始檔案'看你的腳本,你可能會發現你看到的是原始程式。 這表示 web server 並沒有送腳本到PHP去執行。肯定是伺服器配置上哪出了錯。 仔細檢查PHP安裝的 server 設定。
7. Unix/Windows: 我安裝了PHP,但在瀏覽器裡看我的 PHP頁面時,我得到一個 server 500 error。
這是伺服器在執行 PHP 時發生了錯誤。 為了看到可讀的錯誤訊息,在命令列,改變目錄到(php.exe Windows)所在目錄, 運行php -i. 如果有任何問題,詳細的錯誤訊息就顯示出來了,它會告訴你下一步該做什麼。 如果你得到滿屏的HTML程式碼 (phpinfo() 函數的輸出), 那麼PHP工作正常,這個錯誤就是由於伺服器設定引發的,應該仔細檢查。
8. 某些作業系統: 我安裝PHP沒出錯,可是我啟動Apache時,得到一個 undefined symbol errors: [mybox:user /src/php4] root# apachectl configtest apachectl: /usr/local/apache/bin/httpd Undefined symbols:  _compress  _uncompress
這個問題其實與 PHP SQL 而與 My --with-zlib,有些作業系統需要,有些不需要。 MySQL FAQ已經講述了這個問題。
9. Windows: 我安裝了PHP,但在瀏覽器裡看我的PHP頁面, 得到以下錯誤: cgi error: The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:
這是 PHP 完全沒有產生任何輸出。 為了看到可讀的錯誤訊息,在命令列,改變目錄到(php.exe Windows)所在目錄, 運行php -i. 如果有任何問題,詳細的錯誤訊息就顯示出來了,它會告訴你下一步該做什麼。 如果你得到滿屏的HTML程式碼 (phpinfo() 函數的輸出), 那麼PHP運作正常。
一旦PHP在命令列模式下工作,再看看你的腳本程序, 它還是失敗,可能是因為以下原因:

你的PHP腳本的權限許可。 php.exe, php4ts.dll, php.ini 或任何你可能裝入的PHP文件,它樣都必須能被匿名 internet 使用者 ISUR_ 存取。
腳本檔案根本不存在(或不是你認為的位置。)請注意在IIS裡,你能夠阻塞這個錯誤,做法是在設定腳本映射目錄時,選上'check file exists' 框。這樣如果腳本不存在,伺服器會回傳一個404錯誤。 這樣做也有其它的一些好處, 就是IIS僅為你做經過授權的操作。
10. Windows: 我嚴格按照install的要求做,可是還是不能讓我的php在IIS下運作。
確定任何想要運行PHP的用戶有操作php.exe的權限! IIS 使用匿名的internet用戶,它是在IIS安裝時系統自動增加的。 這個使用者需要操作 php.exe的權限. 還有,任何需要授權的使用者也必須有存取 php.exe的權限。在 IIS4下,你要告訴它PHP是一個腳本引擎。 

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/313915.htmlTechArticle安裝這節將講述安裝過程中最常見的問題。 PHP 適用於 幾乎任何的 OS (或許 OSX 之前的 MacOS 除外 ), 和幾乎任何的WEB 伺服器。 要安裝PHP, 跟著...
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板