1. apache php 安裝後,Apache正常啟動,但無法解析PHP,可以解析html。網頁出現HTTP 404是怎麼回事
apache php 安裝後,Apache正常啟動,但無法解析PHP,可以解析html。網頁出現HTTP 404是設置錯誤造成的,解決方法為;
1、在apache的安裝目錄下,有一個htdocs目錄,現在,我們在該目錄下,新建一個簡單的php網頁文件。
2. php apache配置
沒必要這么復雜
安裝完成後,打開httpd.conf,添加以下三行:
LoadMole php5_mole C:/WAMP/PHP5.3.1/php5apache2_2.dll
PHPIniDir "C:/WAMP/PHP5.3.1"
AddType application/x-httpd-php .php .phtml
找到
DirectoryIndex index.html
改為:
DirectoryIndex index.html index.php
之後把PHP5里所有的dll文件(包括ext文件夾下的文件)復制到system32文件夾下。就OK樂,PHP5都不用配置
3. apache 解析一個錯誤的php文件時,會直接顯示php的源碼,如何讓他不顯示源碼。
1、在可能出異常的代碼後面 die('....自己寫錯誤信息');
2、在php中代碼前加error_reporting(0);
3、修改php.ini 中 display_errors設置為display_errors = off
4. 請問php在apache下運行有幾種模式,區別是什麼該怎樣設置,謝謝
Windows 下有兩種方法使 PHP 工作於 Apache 2.0.x 之中。一種是 使用 CGI 可執行程序,另一種是適用 Apache 模塊的 DLL。不管哪種都需要編輯 httpd.conf 來配置 Apache 支持 PHP 並重新啟動伺服器。
注: 記住在 Windows 下給 Apache 的配置文件中加入路徑值的時候,所有的反斜線例如 c:\directory\file.ext 必須轉換成正斜線,如 c:/directory/file.ext。
以 CGI 方式安裝
需要將以下三行加入到 Apache 的 httpd.conf 配置文件中以設定 CGI: 例子 6-5. PHP 在 Apache 2.0 中的 CGI 方式
ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
# 對 PHP 4 用這行
Action application/x-httpd-php "/php/php.exe"
# 對 PHP 5 用這行
Action application/x-httpd-php "/php/php-cgi.exe"
警告
如果使用 CGI 方式安裝,則伺服器對於某些可能的攻擊是開放的。請閱讀 CGI 安全一章以學習如何防禦這些攻擊。
以 Apache 模塊方式安裝
需要將以下兩行加入到 Apache 的 httpd.conf 配置文件中以設定 Apache 2.0 的 PHP 模塊: 例子 6-6. PHP 在 Apache 2.0 中的模塊方式
# 對 PHP 4 用這兩行:
LoadMole php4_mole "c:/php/php4apache2.dll"
# 別忘了從 sapi 目錄中把 php4apache2.dll 拷貝出來!
AddType application/x-httpd-php .php
# 對 PHP 5 用這兩行:
LoadMole php5_mole "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
# 配置 php.ini 的路徑
PHPIniDir "C:/php"
注: 記得用自己 PHP 實際所在的路徑替換掉上例中的 c:/php/。要留意在 LoadMole 指令中用的是 php4apache2.dll 或 php5apache2.dll,而不是 php4apache.dll 或 php5apache.dll,後者是設計用於 Apache 1.3.x 的。
注: 如果要使用內容協商機制,請閱讀有關 FAQ。
警告
不要在安裝中混合使用來自不同 PHP 版本的 DLL。使用下載回來的 PHP 版本中所提供的 DLL 和擴展庫是唯一選擇。
5. php在apache中有哪些工作方式
PHP在Apache中兩種工作方式(CGI模式、Apache模塊DLL)
PHP在Apache中兩種工作方式(CGI模式、Apache模塊DLL)
PHP在Apache中有兩種工作方式:一種是 使用 CGI 可執行程序,另一種是適用Apache 模塊的 DLL。
這兩種工作方式的安裝:
1. CGI方式
PHP 在 Apache 2.0 中的 CGI 方式
ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
# 對 PHP 4 用這行
Action application/x-httpd-php "/php/php.exe"
# 對 PHP 5 用這行
Action application/x-httpd-php "/php/php-cgi.exe"
2. APACHE Mole方式
PHP 在 Apache 2.0 中的模塊方式
# 對 PHP 4 用這兩行:
LoadMole php4_mole "c:/php/php4apache2.dll"
# 別忘了從 sapi 目錄中把 php4apache2.dll 拷貝出來!
AddType application/x-httpd-php .php
# 對 PHP 5 用這兩行:
LoadMole php5_mole "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
# 配置 php.ini 的路徑
PHPIniDir "C:/php"
這兩種工作方式的區別:
在CGI模式下,如果客戶機請求一個php文件,Web伺服器就調用php.exe去解釋這個文件,然後再把解釋的結果以網頁的形式返回給客戶機;
而在模塊化(DLL)中,PHP是與Web伺服器一起啟動並運行的。所以從某種角度上來說,以apache模塊方式安裝的PHP4有著比CGI模式更好的安全性以及更好的執行效率和速度。