win7(Server2012)+IIS7配置PHP環境運行PHP網站詳解(懶人篇)

說說緣由,我的服務器是windows server2012,之前用IIS搭建了兩個項目,但是我現在想在服務器上搭建一個php的項目,於是用了phpstudy集成環境工具部署了php項目,但是發現apache 和IIS出現80端口衝突。網上那些IIS和apache做端口映射的方法太複雜不想用,所以想着直接在IIS上運行php程序。

非IIS環境下,要運行一個php項目,要有以下幾個環境:apache(或tomcat)+php+mysql;所以對於大部分人來說使用phpstudy或者寶塔服務器這種集成環境,可以一鍵安裝部署;

而如果想要在IIS環境下運行PHP項目,除了安裝IIS,還需要單獨安裝php以及mysql。所以我用了一個偷懶的方法,先安裝IIS,然後安裝phpstudy,接下來就開始在IIS中配置PHP環境了。

之前找了幾個不錯的IIS配置php的教程,但是都沒有完全解決我的問題,所以我重新彙總總結一下;

CSDN博客上找到的相關教程,具有參考意義:

1、IIS下配置php運行環境;

2、安裝配置IIS+MySQL+PHP環境的詳細教程(之篇二PHP安裝);

3、在IIS上部署PHP網站

我先在phpstudy集成工具裏面成功部署了我的php項目:

 

然後我開始按照上述教程配置了一遍,我的配置過程如下:

1、安裝php以及mysql:

 先在php管網下載安裝包並解壓,然後複製php.ini-production並改名爲php.ini

php安裝包下載地址:https://windows.php.net/download/  window Server 64位系統請下載: x64 Non Thread Safe 版本。32位請下載 x86 Non Thread Safe版本;

(因爲我安裝的phpstudy已經自動安裝好了php程序(php7.3.4版本),所以我不需要再下載php和mysql,在集成工具中直接找到已安裝好的php目錄即可)

phpstudy下載地址:https://m.xp.cn/

2、IIS添加php項目網站

這一步不再詳細說明,就和常規部署網站一樣的。不會的請參照別的教程;

網站添加完成之後,必須要給網站添加默認文檔”index.php“。否則你直接點擊瀏覽網站,是會報錯的。

具體方法是,選中網站,點擊【默認文檔】進入後,在右上角點擊【添加】然後輸入index.php點擊確定。

3、IIS配置PHP運行環境

IIS左側選擇你剛剛添加的網站,然後雙擊【處理程序映射】

再單擊右側【添加模塊映射】按鈕,在彈出框中填寫如下信息並單擊【確定】按鈕保存。

在彈出的對話框中點擊【是】完成php程序映射的配置。

完成php模塊映射配置之後,還需要配置”FastCGI設置“的參數,IIS左側點擊主目錄進入IIS主頁,然後點擊【FastCGI設置】

然後選擇之前添加的映射模塊路徑,點擊【編輯】,然後再彈出的對話框中,找到【監視對文件所做的更改】項並選擇php程序目錄下的php.ini配置文件;

 

按照其他教程,按理說應該是完成了配置,於是乎我打開網站,發現報了一個404.3的錯誤,壓根就沒法訪問;

 

4、解決404.3報錯問題

於是乎我又按照我之前提到過的教程檢查了一遍。另一篇文章中提到需要修改php網站項目目錄下生成的web.config。於是我照着做,發現還是不對。經過反覆檢查,才發現原來web.config文件中少了個【*】;

原配置文件是這樣:

<handlers>
    <add name="php" path=".php" verb="*" modules="FastCgiModule" scriptProcessor="C:\phpstudy_pro\Extensions\php\php7.3.4nts\php-cgi.exe" resourceType="File" />
</handlers>

只需要在path=".php"改爲path="*.php",加上一個【*】通配符即可;

如果你的web.config目錄下沒有下面這段配置,請添加上:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<system.webServer>
		<handlers>
			<add name="php" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\php7.3.4\php-cgi.exe" resourceType="File" requireAccess="Script" />
		</handlers>
		<defaultDocument>
			<files>
				<add value="index.php" />
			</files>
		</defaultDocument>
	</system.webServer>
</configuration>

配置文件中對應的含義如下:

 

保存好web.config配置文件,然後再次打開網站就可以訪問了。

如果你的php網站項目涉及到僞URL規則的,可以把phpstudy中已生成好的配置拷貝到web.config中即可。

 

 

發佈了27 篇原創文章 · 獲贊 25 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章