導航:首頁 > 編程語言 > apache怎麼運行php

apache怎麼運行php

發布時間:2023-09-02 12:53:00

1. 如何配置apache支持php

編譯安裝php,並且把php模塊放到apahce里,然後apache conf中添加php模塊配置 apache要開啟模塊載入模式 #./configure --prefix=/usr/apache2 --enable-mole=so --enable-ssl 配置文件加入 LoadMole php5_mole moles/libphp5.so php編譯模塊到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

2. apache怎麼載入php

Apache對於php的解析,就是通過眾多Mole中的php Mole來完成的,載入php是通過php5這個模塊來實現的,下面通過圖來說明Apache載入php模塊的過程及代碼如何載入php。
把php最終集成到Apache系統中,還需要對Apache進行一些必要的設置。這里,我們就以php的mod_php5 SAPI運行模式為例進行講解,至於SAPI這個概念後面我們還會在其它的文章中講解。
假定我們安裝的版本是Apache2 和 Php5,那麼需要編輯Apache的主配置文件http.conf,在其中加入下面的幾行內容:
Unix/Linux環境下:
LoadMole php5_mole moles/mod_php5.so
AddType application/x-httpd-php .php
註:其中moles/mod_php5.so 是X系統環境下mod_php5.so文件的安裝位置。
Windows環境下:
LoadMole php5_mole d:/php/php5apache2.dll
AddType application/x-httpd-php .php
註:其中d:/php/php5apache2.dll 是在Windows環境下php5apache2.dll文件的安裝位置。
這兩項配置就是告訴Apache Server,以後收到的Url用戶請求,凡是以php作為後綴,就需要調用php5_mole模塊(mod_php5.so/ php5apache2.dll)進行處理。

3. 弱弱的問下,如何在apache下運行php程序

1、如果你只是測試用,apache/php/mysql都沒必要自己裝,直接下載一個apmserv這樣的軟體,綠色的,一鍵啟動這些程序。
2、默認的網站根目錄是在apache安裝目錄下的htdocs文件夾下,把你的網站放那去就行了,也可以確認一下,打開apache安裝目錄下的conf文件夾,用記事本之類打開httpd.conf,搜索一下DocumentRoot,看看它的值在哪,那個就是網站根目錄。

4. apache怎麼啟動php

首先apache是伺服器,不能直接運行php文件。 解決方法: 安裝php,從php官網下載php安裝包。配置好php環境。(或者使用ampz,phpstudy這些軟體便捷安裝php以及Apache伺服器環境) 將php文件放在網站根目錄下。 打開瀏覽器在地址欄中鍵入Localhos.

5. apache配置文件中怎麼配置php

1.新建一個文件建立三個文件,分別為apache,php,mysql 等子文件夾。
2.分別下載好不同軟體。
3.下載好完成之後,先測試一下apache是否可以可以訪問頁面,在頁面輸入http:localhost,如果可以訪則安裝成功,反之不成功。
4.配置php的時候,首先檢查apache版本和php文件里php5apache2_2.d版本是否相同,如果不相同,改成和apache版本一致。再打開apache文件找到httpd.conf打開:
查找「DocumentRoot」,這里是指定主頁放置的目錄。默認是:「D:\Program Files\Apache\htdocs」,你可以使用默認的目錄,也可以自己定義一個,如:「D:/PHP」。注意:目錄末尾不要加「/」。2)、查找「DirectoryIndex」,這里是默認首頁文件名,可以在index.html 的後面加入index.php等。每種類型之間都要留一個空格。3)、查找<Directory />Options FollowSymLinksAllowOverride NoneOrder deny,allowDeny from all</Directory>修改為:<Directory />Options FollowSymLinksAllowOverride NoneOrder deny,allowallow from all</Directory>如果不改這里的話,可能會出現 You don't have permission to access / on this server. 這樣的錯誤提示,尤其在改變了默認主頁的路徑後。
注意:每次修改httpd:conf文件後,都要重啟apache伺服器。另外,如果你的win32系統上同時也運行iis伺服器,那麼就要先停止iis伺服器的運行,然後再啟動apache,否則apache伺服器無法啟動。
5.php的安裝與配置方法
1)、將PHP的壓縮包zip解壓到一個目錄下,推薦:「C:/PHP」,pharmar的是D:\Program Files\Php。2)、將PHP目錄(D:\Program Files\Php)下的 php.ini-dist 文件重命名為 php.ini,PHP的配置文件就是它,修改以下幾個地方,修改好後把 php.ini 文件復制到 C:\WINDOWS\ 目錄里:extension_dir="D:\Program Files\Php\ext" ,指向php文件夾下放置「php_*.dll」文件的路徑。PHP4和PHP5的路徑在這里有所區別。doc_root="D:\PHP" ,指向前面apache設置的首頁位置;default_charset="gb2312" ,修改默認字元集,這里,如果前面有分號「;」,去掉這個分號;register_globals=Off 改為 register_globals=On ,使傳遞全局變數有效;extension=php_dba.dll 如果前面有分號,取消分號,以下同;extension=php_dbase.dllextension=php_gd2.dll GD庫做圖,一般用於圖形驗證碼;extension=php_mysql.dll 用於連接MYSQL資料庫;3)、將PHP目錄下的 php5ts.dll 文件拷貝到 C:\WINDOWS\system32 目錄。4)、最後修改 Apache 的 httpd.conf 文件。在該文件的末尾添加如下2行,表示以模塊方式安裝PHP進入Apache:LoadMole php5_mole D:/Program Files/Php/php5apache2_2.dllAddType application/x-httpd-php .php
注意:第一行的目錄路徑要更新為當前版本的apache動態鏈接庫,比如這里我使用的是apache2.2.15版本和php5.3.2,那這個文件必須是php5apache2_2.dll,而不能是php5apache.dll、php5apache2.dll等。第二行為php腳步的後綴。php4版中,需要添加一行 AddType mod_php4.c,而在php5中,就不需要這樣的一行 AddType mod_php5.c了,php5已經集成,否則 apache 啟動不了。
以上就完成了apache和php的配置過程了,重啟apache。在伺服器的默認目錄「D:\Program Files\Apache\htdocs」里新建文件index.php,寫上如下代碼:<?phpphpinfo();?>
在瀏覽器地址欄里輸入 http://127.0.0.1/ 或 http://localhost/ ,你就會看到php版本信息了。到此為止,php和apache就已經成功的安裝了。

6. Apache需要將php文件交給PHP解釋器處理後再 返回給瀏覽器,那PHP如何運行的呢

1.我們從未手動開啟過PHP的相關進程,它是隨著Apache的啟動而運行的;
2.PHP通過mod_php5.so模塊和Apache相連(具體說來是SAPI,即伺服器應用程序編程介面);
3.PHP總共有三個模塊:內核、Zend引擎、以及擴展層;
4.PHP內核用來處理請求、文件流、錯誤處理等相關操作;
5.Zend引擎(ZE)用以將源文件轉換成機器語言,然後在虛擬機上運行它;
6.擴展層是一組函數、類庫和流,PHP使用它們來執行一些特定的操作。比如,我們需要mysql擴展來連接MySQL資料庫;
7.當ZE執行程序時可能會需要連接若干擴展,這時ZE將控制權交給擴展,等處理完特定任務後再返還;
8.最後,ZE將程序運行結果返回給PHP內核,它再將結果傳送給SAPI層,最終輸出到瀏覽器上。

7. 如何運行PHP

分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:

我們要在電腦上運運ASP文件 只要裝IIS就可以。

哪要運行PHP文件呢。該怎麼辦!~

解析:

如何安裝運行php

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 files\apache group\apache. 這樣你可以有不同的 php.ini 對應不同版本的 Apache(同一台機器上)。

更多細節請查閱 configuration file.

2. Unix: 我安裝了 PHP, 但我每次載入一個文檔, 會得到下面的消息: Document Contains No Data ! 怎麼回事?

這可能是因為你的 PHP 發生了core-mping錯誤。 查找你的伺服器錯誤日誌文件,看看是否屬於這種情況。 然後報告這個錯誤。如果你知道怎州畢樣使用 gdb ,你可以提供一個 backtrace 在你的錯誤報告里。這將會對開發人員解決 這個問遲帶題有很大幫助。如果你是在將PHP作為Apache模塊使用,那麼請按下面的步驟做:

停止 d 進程

gdb d

停止 d 進程

> run -X -f /path/to/d.conf

瀏覽你剛才出錯的 URL

> run -X -f /path/to/d.conf

如果你還有 core mp, gdb 現在會通知你

打入: bt

在你的 bug report里應該包含backtrace 。 這些會被發往 bugs.php/

如果你的腳本使用了正則表達式函數 (ereg() and friends), 你應該確保你編譯 PHP 和 Apache 用的是同一個正則表達式包。 在 PHP 和 Apache 1.3.x 這個過程是自動進行的。

3. Unix: 我使用 RPMS 安裝 PHP , 但Apache 不支持 PHP頁面! 怎麼辦?

假設你安裝了 Apache 和 PHP(從 RPM ) , 你需要反注釋或者增加一些行在你的 .conf 文件里: # Extra MolesAddMole mod_php.cAddMole mod_php3.cAddMole mod_perl.c# Extra MolesLoadMole php_mole moles/mod_php.soLoadMole php3_mole moles/libphp3.so /* for PHP 3 */LoadMole php4_mole moles/libphp4.so /* for PHP 4 */LoadMole perl_mole moles/libperl.so

And add: AddType application/x-d-php3 .php3 /* for PHP 3 */AddType application/x-d-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/ *** in/apxs \ --with-config-file-path=/usr/lib \ --enable-debug=no \ --enable-safe-mode \ --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下的Mysq

l的支持。 注意到這種做法比你重新得到一個 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/d Undefined symbols: _press _unpress

這個問題其實與 PHP 無關, 而與 MySQL 客戶端庫有關。 --with-zlib,有些操作系統需要,而有些不需要。MySQL FAQ已經講述了這個問題。

9. Windows: 我安裝了PHP,但在瀏覽器里看我的PHP頁面, 得到如下錯誤: cgi error: The specified CGI application mi *** ehaved by not returning a plete 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文件,它樣都必須能被匿名 inter 用戶 ISUR_ 訪問。

腳本文件根本不存在(或者不是你認為的位置。)請注意在IIS里,你能夠阻塞這個錯誤,做法是在設置腳本映射目錄時, 選上 check file exists 框。這樣如果腳本不存在,伺服器會返回一個404錯誤。 這樣做也有其它的一些好處, 就是IIS僅為你做經過授權的操作。

10. Windows: 我嚴格按照install的要求做,可是還是不能讓我的php在IIS下工作。

確定任何想要運行PHP的用戶有操作php.exe的許可權! IIS 使用匿名的inter用戶,它是在IIS安裝時系統自動增加的。 這個用戶需要操作 php.exe的許可權. 還有,任何需要授權的用戶也必須有訪問 php.exe的許可權。 在 IIS4下,你要告訴它PHP是一個腳本引擎。

與apache怎麼運行php相關的資料

熱點內容
加密貨幣交易所哪個最好 瀏覽:816
linux的現狀 瀏覽:926
命令與征服叛逆者修改器 瀏覽:246
怎麼用ios玩安卓全民槍戰 瀏覽:668
程序員入行前後的頭發 瀏覽:711
嵌入式圖像演算法 瀏覽:329
伺服器如何訪問伺服器失敗 瀏覽:875
android進度球 瀏覽:1001
Linux造成xfs文件夾 瀏覽:457
華為手機怎麼修改wifi加密類型 瀏覽:250
伺服器封口是什麼意思 瀏覽:743
有限元分析是演算法嗎 瀏覽:901
空氣壓縮機性能曲線 瀏覽:22
京城程序員2019 瀏覽:406
android新系統 瀏覽:512
安卓80有什麼bug 瀏覽:681
如何做單機伺服器 瀏覽:945
校訊通查成績怎麼顯示伺服器異常 瀏覽:886
冰箱壓縮機工作壓力是多少 瀏覽:412
程序員20多平米租房 瀏覽:454