㈠ apache 解析一個錯誤的php文件時,會直接顯示php的源碼,如何讓他不顯示源碼。
1、在可能出異常的代碼後面 die('....自己寫錯誤信息');
2、在php中代碼前加error_reporting(0);
3、修改php.ini 中 display_errors設置為display_errors = off
㈡ 請問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 和擴展庫是唯一選擇。
㈢ 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模式更好的安全性以及更好的執行效率和速度。
㈣ ubuntu下如何安裝php環境
Ubuntu下安裝PHP環境,首先確保已安裝Apache和MySQL。若Apache未安裝,運行命令sudo apt-get install apache2。在瀏覽器輸入http://localhost,如出現網頁,則表示Apache安裝成功。檢查Apache狀態,使用命令service apache2 status。
安裝MySQL後,打開文件/var/www/html/phpinfo.php,輸入代碼<php echo phpinfo();>,在瀏覽器訪問http://localhost/phpinfo.php以查看PHP版本,若未安裝最新版本,運行命令sudo apt-get install php。
安裝PHP所需的其他模塊,使用命令sudo apt-get install libapache2-mod-php php7.0-mysql。重啟Apache和MySQL服務,命令分別為service apache2 restart和service mysql restart。
測試PHP能否被Apache解析,在伺服器中創建文件phpinfo.php,內容為<php echo phpinfo();>,並訪問http://localhost/phpinfo.php,若顯示PHP版本信息,則表示測試成功。
修改/var/www目錄許可權為777,確保網站文件可讀寫執行,使用命令sudo chmod 777 /var/www。
安裝phpMyAdmin,執行命令sudo apt-get install phpmyadmin。選擇Apache2並確認安裝。
若遇到錯誤提示,嘗試執行以下步驟解決:備份舊的/var/lib/dpkg/info文件,創建新的目錄/var/lib/dpkg/info,更新並修復依賴關系sudo apt-get update && apt-get -f install,將新舊/var/lib/dpkg/info文件夾下的文件互換,最後刪除新/var/lib/dpkg/info文件夾,恢復舊文件。
重啟Apache服務,使用命令service apache2 restart。測試phpMyAdmin是否可以正常訪問,使用http://localhost/phpmyadmin,若在雲伺服器上,則需將localhost替換為伺服器IP。
最後,配置Apache以支持PHP文件,編輯/etc/apache2/apache2.conf文件,在文件末尾添加include /etc/phpmyadmin/apache.conf,設置文件擴展名為可解析PHP文件的類型,例如AddType application/x-httpd-php .php .htm .html,並設置默認字元集為UTF-8。重啟Apache服務以應用配置更改。
完成上述步驟後,Ubuntu環境下的PHP安裝即大功告成。在瀏覽器中輸入http://localhost/phpmyadmin即可訪問phpMyAdmin界面,進行資料庫管理操作。
㈤ 如何配置apache支持php
為了使Apache伺服器支持PHP,首先需要安裝PHP,並將其模塊整合到Apache中。此過程通常包括編譯PHP源代碼,並確保PHP模塊能夠被Apache載入。在配置Apache時,需要啟用模塊載入模式,可以通過如下命令進行配置:
#./configure --prefix=/usr/apache2 --enable-mole=so --enable-ssl
在Apache的配置文件中,需要加入相應的指令來載入PHP模塊。例如,可以通過添加以下內容到Apache配置文件中:
LoadMole php5_mole moles/libphp5.so
接下來,需要將PHP編譯模塊放置到Apache的moles目錄下,這可以通過以下命令實現:
#./configure --prefix=/usr/php5 --with-apxs2=/usr/apache2/bin/apxs --with-mysql=/usr/mysql --with-curl=/usr/include/curl --with-zlib --with-gd --enable-mbstring
在此過程中,還需要指定一些擴展庫的位置,例如MySQL、cURL、zlib、GD庫等,以及啟用多位元組字元串處理功能。這些配置步驟將確保PHP能夠在Apache伺服器上正常運行。
完成上述配置後,記得重啟Apache服務以使更改生效。通常,可以使用以下命令來重啟Apache:
#/usr/apache2/bin/apachectl restart
重啟後,Apache將能夠載入PHP模塊並處理PHP腳本。確保Apache的錯誤日誌中沒有關於模塊載入或PHP執行的錯誤信息,以確認一切正常運行。
此外,可以創建一個簡單的PHP文件(例如info.php),並在其中添加如下代碼來驗證PHP是否正確配置:
將此文件放置在Apache的Web根目錄下,通過瀏覽器訪問該文件,如果看到包含PHP詳細信息的頁面,則說明PHP已正確配置。
以上步驟詳細描述了如何將PHP模塊集成到Apache伺服器中,確保了PHP能夠在Web伺服器上正常運行和處理請求。
㈥ 在區域網內,用Apache2建了PHP伺服器,IP地址是自動獲取,建立了虛擬主機,如何在別的電腦上來訪問站點
server啟動之後,查看他的IP地址是多少,這個就不贅述了,假如看到的是192.168.1.2,在看你當時做虛擬主機的埠是多少,默認一個是80,在另外一台機器上,打開瀏覽器,輸入http://192.168.1.2:80 就可以訪問了,具體參數查看你的伺服器的設置。另外一個網站的訪問http://192.168.1.2:X, 80和X的埠號具體是多少,你應該清楚,或者上apache去查吧