導航:首頁 > 編程語言 > iisphp應用程序池

iisphp應用程序池

發布時間:2025-07-22 09:37:31

php以fastCGI的方式運行時文件系統許可權問題及解決方法

在IIS7.0上以FastCGI方式配置好PHP運行環境,測試可以正常運行PHP程序後,將PHP程序部署上去,導入程序原來的數據和配置信息。很快就有問題出來啦下面我們就詳細記錄下。
今天准備將一個php
demo放在IIS下運行,網站在IIS下的配置是這樣的:
應用程序池是集成模式下的.net
framework
2.0(2.0或4.0沒什麼關系,因為php以fastCGI的方式在跑),
應用程序池標識配置為IIS內置的NETWORKSERVICE,
使用的認證方式為匿名身份驗證。
打開本地的網站,訪問php頁面,
出現了500錯誤。
好吧,是許可權問題,最簡單的解決辦法是把C:的許可權設成Everyone,
並允許完全控制:
重新訪問php頁面,成功了:
上面的方法是夠簡單,但也太不安全了,平時本地搭個demo這樣做沒問題,真正上線的時候,這樣做遲早出問題的。
於是重新設置,把該目錄下的只讀許可權賦給NETWRORKSERVICE帳號再試一下
不過問題還是沒有解決,訪問的時候,出現了401錯誤
錯誤信息中包括顯示登錄用戶為匿名,檢查了網站下的身份驗證(再點擊
匿名身份驗證->編輯),原來網站默認情況下,在登錄方法為匿名時,使用的默認登錄用戶為IUSR(就是我們看到的匿名登錄用戶了)
那麼解決辦法就是:
1.
將IUSR設置為C:的讀許可權,類似之前對NETWORKSERVICE的設置。
2.
或選擇使用應用程序池標識即可。
經試驗,方法1與2都成功。
Note:NETWORKSERVICE在IIS7中隸屬於iis_iusers用戶組,之前對NETWORKSERVICE的設置也可以改為對iis_iusers的設置,同樣也可以解決問題,只是許可權被進一步放寬了而已。
以上所述就是本文的全部內容了,希望大家能夠喜歡。

⑵ IIS6.0 IIS7.5應用程序池自動停止怎麼辦

在日誌中發現IIS7.5的應用程序池自動停止,同時訪問網站提示:HTTP Error 503,The service is unavailable.. 的錯誤,搜遍整個互聯網總算是解決了問題。小編也整理了IIS6及IIS7.5遇到此類問題匯總解決方法,歡迎大家嘗試。

關於IIS6的(適於IIS7)解決方法

描述:

iis6應用程序池被自動禁用問題 Service Unavailable 應用程序池 'DefaultAppPool' 被自動禁用,原因是為此應用程序池提供服務的進程中出現一系列錯誤。應用程序-特定 許可權設置未將 COM 伺服器應用程序(CLSID 為 .............

1.首先是打開IIS管理器.檢查應用程序池,果然"DefaultAppPool"出錯了.而且不是平常的停止的圖標.

2.試著重啟"DefaultAppPool"應用程序池,一瀏覽頁面馬上就關閉.

3.到了查看事件日誌的時候了.發現了以下這類的日誌

事件類型: 警告
事件來源: W3SVC
事件種類: 無
事件 ID: 1009
日期: 2008-6-24
事件: 16:12:33
用戶: N/A
計算機: MAIL
描述:
為應用程序池 'DefaultAppPool' 提供服務的進程意外終止。進程 ID 是 '3160'。進程退出代碼是 '0xffffffff'。

4.會不會是默認的程序池出問題了?於是,嘗試新建一個新的程序池.將默認網站的程序池改成新的.但是問題依舊.出現相似的日誌.

事件類型: 錯誤
事件來源: W3SVC
事件種類: 無
事件 ID: 1002
日期: 2008-6-25
事件: 14:17:04
用戶: N/A
計算機: MAIL
描述:
應用程序池 'AppPool #1' 被自動禁用,原因是為此應用程序池提供服務的進程中出現一系列錯誤。

5.再查找事件日誌另一個日誌引起了我的注意.如下:

事件類型: 錯誤
事件來源: DCOM
事件種類: 無
事件 ID: 10016
日期: 2008-6-24
事件: 16:12:33
用戶: NT AUTHORITY/NETWORK SERVICE
計算機: MAIL
描述:
應用程序-特定 許可權設置未將 COM 伺服器應用程序(CLSID 為
{A9E69610-B80D-11D0-B9B9-00A0C922E750}
)的 本地 激活 許可權授予用戶 NT AUTHORITY/NETWORK SERVICE SID (S-1-5-20)。可以使用組件服務管理工具修改此安全許可權。

6.有點戲了.看看CLSID 為 {A9E69610-B80D-11D0-B9B9-00A0C922E750}是什麼服務先.最後在下面的注冊表項中找到它:

HKEY_CLASSES_ROOT/AppID/{A9E69610-B80D-11D0-B9B9-00A0C922E750}

7.名字剛好是"IIS Admin Service"

8.好了,找到是什麼了.從"管理工具"中打開"組件服務",找到IIS Admin Service對比一下CLSID是否一致

9.確定是這個以後,接下來的就是為它增加NETWORK SERVICE許可權了.
A啟動和激活許可權,點擊"自定義"..

B.在用戶列表中添加"NETWORK SERVICE",

C.並給予本地啟動和激活許可權,保存退出.

另外,如果還是有問題,把「IIS wamreg admin SERVICE」也這樣操作一下,右健選擇「屬性」,找到「安全」,在「啟動和激活許可權」中編輯「自定義」,添加帳號
network service network service 分別給本地啟動和激活許可權。

2014年2月18日再補充:今日有網友向小編反饋他的解決方法,就是在Windows server 2008 R2 64位下使用PHP5.5.x版本,不用以上設置,也解決了此問題。

到此問題解決。

也有朋友提到,選項無法編輯,為灰色,應該怎麼辦?

這個是win2008 R2 x64的安全特性.一些核心系統組件只能允許本地帳號,TrustedInstaller有完全控制許可權,而不是本地管理員組
要在Windows Server 2008 R2 上修改 「IIS Admin Service」 ,你需要授予本地管理員組有注冊表許可權:
1.在組件管理器中查到IIS的appid
2.使用regedit,定位到HKEY_CLASSES_ROOTAppID{剛查到的ID}」
3.右鍵點擊{剛查到的ID},選許可權
4.在許可權設置窗口中點高級,選擇所有者標簽,選中administrators為所有者
5.授予administrators組有讀/寫等所有權 注意:務必不要修改TrustedInstaller的許可權
現在,重新執行組件管理器,可以修改許可權了

⑶ iis如何運行php

1.首先

我們需要安裝好IIS,默認windows2008下是iis7.0,具體的安裝可以查看iis7.0安裝圖解


2. 安裝好IIS後,默認已經支持asp,這里我們開始安裝.net環境

進入系統,打開桌面左下角「伺服器管理器」

點擊功能->"添加功能"->勾選「.NET Framework 3.5.1功能」

點擊下一步,安裝完成即可。

3. 接下來配置PHP環境,從常用軟體下載php5.2.6和php.ini文件

下載後,將php5.2.6解壓為php,並將php.ini拷貝到php裡面,這里我們將php放置在C:Program Files目錄下,

並用記事本打開php.ini文件,找到extension_dir這一行,將路徑修改為ext文件所在路徑,我們這里為 C:Program Filesphpext

設置php文件夾目錄許可權:

administrators 完全控制
system 完全控制
users 讀取和運行,列出文件夾目錄,讀取

設置系統環境變數:

Path環境變數末尾追加C:Program Filesphp
新建系統變數PHPRC變數值C:Program Filesphp

IIS設置:
A.添加應用程序池

E.將站點進程池設置到創建的php進程池內,重啟IIS,在默認站點下創建一個info.php,內容如下:

<?php

phpinfo();

?>

打開localhost/phpinfo.php 查看效果:


到這里PHP環境配置完成。


額外注意:

IIS+php 運行phpMyAdmin


Cannot start session without errors, please check errors 錯誤解決辦法

在php安裝目錄 找到php.ini

將php.ini中的session.auto_start的值改為1(啟動),默認是0(禁用),


在你的php安裝目錄下找到php.ini並且在該目錄下創建Temp文件夾


; where MODE is the octal representation of the mode. Note that this
; does not overwrite the process's umask.
;session.save_path = "D:/host/php/Temp"


session.save_path 這一行,設成session.save_path = 「D:/host/php/Temp」 (把前面分號去掉)

然後重啟IIS伺服器

在phpmyadmin中找到,config.sample.inc.php,改成config.inc.php,
找到 $cfg['blowfish_secret'] 將後面的賦值,加入數字和字母組合。

⑷ 伺服器php怎麼用iis7配置

方法一、安裝使用phpmanager
1.下載安裝phpmanager,
2.創建並配置php.ini。將php.ini-development文件改名為php.ini,修改date.timezone=」Asia/Shanghai」。去分號開啟所需的擴展,這里不贅述。
3.打開IIS7,在主面板中雙擊phpmanager,然後點擊其中的」Register new PHP Version」,選擇你的php-cgi.exe,確定。剩下其它的配置它將給你自動設置好。
4.完成!
方法二、手動配置cgi模式(php5.3)
1.創建並配置php.ini,同上2。
2.打開IIS7,在主面板中雙擊處理程序映射,然後在右側菜單中點擊「添加模塊映射…」,設置如下:
請求路徑:*.php;
模塊:FastCgiMole;
可執行文件:你php文件夾中的php-cgi.exe;
名稱:php;
3.完成!
方法三、手動配置isapi模式(php5.2)
1.創建php.ini。php.ini-dist改名為php.ini,打開找到extension_dir=」/」,把路徑改為你的php所在路徑。
2.添加一個應用程序池,設置如下:
名稱:php;
.net framework版本:無託管代碼;
託管管道模式:集成
勾選立即啟動應用程序池。
確定。
3.雙擊ispa和cgi限制。添加一個限制,設置如下:
ISAPI或CGI路徑: 你的php5isapi.dll。
描述:php。
勾選允許執行擴展路徑。
確定。
4.添加一個isapi篩選器,設置如下:
篩選器名稱:php;
可執行文件:你的php5isapi.dll文件;
確定。
5.添加腳本映射。 雙擊處理程序映射, 點擊右側菜單的「添加腳本映射…」,設置如下:
請求路徑:*.php;
可執行文件:你的php5isapi.dll文件;
名稱:php5;
確定。
6.完成!

閱讀全文

與iisphp應用程序池相關的資料

熱點內容
itextpdf轉html 瀏覽:184
linux單片機模擬軟體 瀏覽:329
有解壓密碼的壓縮文件 瀏覽:252
lz4命令 瀏覽:591
店長的h命令要絕對服從 瀏覽:599
伺服器數據盤怎麼分區 瀏覽:152
android最低亮度 瀏覽:5
java連續數字 瀏覽:47
程序員那麼可愛在線觀看星辰影院 瀏覽:796
演算法屬於數學模型嗎 瀏覽:433
java程序員被裁員 瀏覽:68
ftp命令亂碼 瀏覽:127
飢荒怎麼創建伺服器 瀏覽:676
什麼演算法人代表 瀏覽:699
優課聯盟是哪個app 瀏覽:766
魔獸爭霸全能工具源碼 瀏覽:243
程序員和靈長類動物 瀏覽:854
html源碼快速查找css 瀏覽:948
手機上怎麼做壓縮文件 瀏覽:64
程序員cpu需要多核心嗎 瀏覽:670