PHP是一種開源的,可以嵌入HTML中實現WEB頁面動態生成的腳本語言。隨著互聯網的發展,PHP已成為許多網站的首選開發語言。而IIS8則是微軟推出的Web服務器,支持多種開發語言和服務端技術,如ASP.NET、PHP等。而下面將為您介紹PHP與IIS8的結合和相關配置。
在配置IIS8之前,首先我們需要下載安裝PHP的運行環境,這里以PHP7為例。同時,請確保我們的IIS8已經配置好了Web服務器,并打開了必要的IIS服務。接著,我們進入IIS管理面板,添加一個新的站點。設置一個唯一的站點名稱,并將站點的物理路徑指向我們剛剛安裝PHP的路徑。接著,我們選擇“默認文檔”選項卡,添加“index.php”作為默認文檔。這樣,當用戶輸入我們站點的URL地址時,就會首先訪問此默認文檔。
下一步是創建一個PHP URL重寫規則。我們需要在IIS的URL重寫模塊中添加一條規則,用于將所有請求都重寫到我們的index.php文件中:
\
<?xml version="1.0"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="PHP" stopProcessing="true"> <match url="^(.*)$" /> <conditions> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="index.php/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>此規則將攔截所有非文件和非目錄的請求,并將它們重寫到index.php文件中。這樣,我們就能夠在一個PHP文件中處理所有的請求了。在index.php文件中,我們可以使用$_SERVER['REQUEST_URI']獲取用戶請求的URL,進一步處理和操作。 此外,我們還需要設置PHP的cgi模塊,用于解釋和執行我們的PHP文件。在IIS管理器中,我們需要添加一個新的FastCGI應用程序。在添加時,需要指定PHP-CGI.exe所在的路徑,并將啟動文件設置為index.php。接著,我們需要為此FastCGI應用程序設置一個全局的FastCGI變量,用于定義錯誤信息輸出的方式。如下: \
<system.webServer> <fastCgi> <application fullPath="C:\PHP\php-cgi.exe" arguments="-c C:\PHP\php.ini" /> <environmentVariables> <environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="1000" /> <environmentVariable name="PATH" value="%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\PHP" /> <environmentVariable name="PHPRC" value="C:\PHP" /> <environmentVariable name="PHP_FCGI_CHILDREN" value="8" /> <environmentVariable name="PHP_FCGI_ACTIVITY_TIMEOUT" value="600" /> <environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="1000" /> <environmentVariable name="SCRIPT_FILENAME" value="C:\inetpub\wwwroot\index.php" /> <environmentVariable name="PATH_INFO" value="" /> <environmentVariable name="PHP_SELF" value="" /> <environmentVariable name="REQUEST_METHOD" value="GET" /> <environmentVariable name="QUERY_STRING" value="" /> </environmentVariables> </fastCgi> </system.webServer>這里的PHP配置文件由于平時沒有使用,我使用的是默認值。如果您有自己的配置文件,則需要針對不同的配置進行相應的設置。 最后,我們還需要在IIS中添加一個處理程序映射,使得IIS知道我們的PHP文件應該如何處理。在此步驟中,我們需要為handler映射創建一個新的hander處理程序名稱,并指定對應的FastCGI應用程序(剛剛添加的PHP-CGI.exe)。這樣,當IIS接收到一個PHP文件的請求時,就會調用對應的FastCGI處理程序。 以上就是PHP與IIS8的結合及相關配置的介紹。通過以上配置,我們可以讓PHP與IIS8完美結合,實現Web應用程序的高效運行。