IIS Installation? ????? IIS API? ???? IP ???? ?????? ??? ?????.
?? ?? ??: IIS Installation
? ???? Microsoft.Web.Administration
? ???? ???. code> ??? ???:
PS: Microsoft.Web.Administration
? Nuget
? ?? ???? ??? ? ????. Microsoft.Web.Administration
寫的一個簡單封裝:
PS: Microsoft.Web.Administration
可通過 Nuget
搜索安裝。
public?class?IISAdministration { ????private?readonly?ServerManager?serverManager; ????public?IISAdministration() ????{ ????????serverManager?=?new?ServerManager(); ????} ????public?IEnumerable<WorkerProcess>?GetWorkerProcesses() ????{ ????????return?serverManager.WorkerProcesses; ????} ????public?IEnumerable<string>?GetSiteNames() ????{ ????????foreach?(var?item?in?GetWorkerProcesses()) ????????{ ????????????yield?return?item.AppPoolName; ????????} ????} ????public?ConfigurationElementCollection?GetIpSecurityCollection(string?site) ????{ ????????return?GetConfigurationElementCollection("system.webServer/security/ipSecurity",?site); ????} ????public?ConfigurationElementCollection?GetConfigurationElementCollection(string?sectionName,?string?site?=?"") ????{ ????????var?config?=?serverManager.GetApplicationHostConfiguration(); ????????ConfigurationSection?section; ????????if?(string.IsNullOrWhiteSpace(site)) ????????{ ????????????section?=?config.GetSection(sectionName); ????????} ????????else ????????{ ????????????section?=?config.GetSection(sectionName,?site); ????????} ????????return?section.GetCollection(); ????} ????public?void?CreateElement(ConfigurationElementCollection?section,?ConfigurationElement?element) ????{ ????????section.Add(element); ????????serverManager.CommitChanges(); ????} ????public?void?RemoveElement(ConfigurationElementCollection?section,?ConfigurationElement?element) ????{ ????????section.Remove(element); ????????serverManager.CommitChanges(); ????} ????public?bool?HasBlocked(string?siteName,?string?ip) ????{ ????????var?ipSecurityCollection?=?this.GetIpSecurityCollection(siteName); ????????for?(int?i?=?0;?i?<?ipSecurityCollection.Count;?i++) ????????{ ????????????var?element?=?ipSecurityCollection[i]; ????????????if?((string)element["ipAddress"]?==?ip) ????????????{ ????????????????return?true; ????????????} ????????} ????????return?false; ????} ????public?void?FreeIP(string?siteName,?string?ip) ????{ ????????if?(!HasBlocked(siteName,?ip)) ????????{ ????????????return; ????????} ????????var?ipSecurityCollection?=?this.GetIpSecurityCollection(siteName); ????????for?(int?i?=?0;?i?<?ipSecurityCollection.Count;?i++) ????????{ ????????????var?element?=?ipSecurityCollection[i]; ????????????if?((string)element["ipAddress"]?==?ip) ????????????{ ????????????????this.RemoveElement(ipSecurityCollection,?element); ????????????????break; ????????????} ????????} ????} ????public?void?BlockIP(string?siteName,?string?ip) ????{ ????????if?(HasBlocked(siteName,?ip)) ????????{ ????????????return; ????????} ????????var?ipSecurityCollection?=?this.GetIpSecurityCollection(siteName); ????????var?element?=?ipSecurityCollection.CreateElement("add"); ????????element["ipAddress"]?=?ip; ????????element["allowed"]?=?false; ????????ipSecurityCollection.Add(element); ????????serverManager.CommitChanges(); ????} }
使用方法:
var?iisAdministration?=?new?IISAdministration(); iisAdministration.BlockIP("",?"192.0.0.1");
注意:
-
BlockIP
第一個參數(shù)為站點名,如果空字符串,則直接添加到IIS
rrreee ???: - rrreee ??:
- ??
BlockIP
? ?? ????? ??? ?????. ? ???? ?? IIS ?? ?? ?? IP ??. ????? ??? ??? ????? ????? ??? ??? ?????. ????
? ??? IIS API? ???? IP ???? ?????? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

???? ??? ???? ???? XML ???????. ?? ??? ? ?? ?????? ??? ?? Oxygen XML ??? ?? XMLSPy? ?? XML ???? ??? ? ????. ?????? XML ???? ???? ?? ????? ?? (? : Python) ? XML ???? (? : XML.etree.elementtree)? ???? ?? ???????.

IIS? Microsoft? ? ??? ? ?? ????? ????? ?? ?? ? ? ?? ????????. 1. Windows?? "?? ? ?? ??"???? ?? IIS? ??? ? ????. 2. PowerShell ????? ?? ? ??? ??? ?? ? ? ????. 3. Web.config ??? ?? URL ? ??? ???? ?? ? SEO? ?? ? ? ????. 4. IIS ??, ?? ?? ? ?? ????? ???? ???? ?? ? ? ????. 5. ??, ?? ?? ??? ???? ????? IIS ??? ??? ? ? ????.

Bootstrap? ????? ?? ????? ??? ???? ?????. ????? ? ???? ?? ??? ????? ?? ????? ?? ?? (?? ??) ??? ?? ??? (?? ??)

IIS? ??? ?? ???? ???, ?? ?, ?? ? ??? ?? ??? ?????. 1) ?? ?? ???? ?? ? ?? ? ??? ?? ??? ? ?? ? IIS? ?? ??? ????? ????? ?? ? ? ????. 2) Security? ? ??? ??? ?????? SSL/TLS ?? ? URL ?? ?? ??? ?????. 3) ?????? ?? ?? ?? ????? ???? ?? ???? ?????. 4) ?? ? ????? iismanager ? PowerShell ????? ?? ?? ??? ??????.

?? ?? : YII ??? ??? ???? ?? ??? ? ??????? ?????? ????? ??? PHP ??? ?????. ???, ??? ???? ?? ???? ?????. ? ??? YII ??? ??? ?? ??? ? ???? ???? ???? ??, ?? ???? ??? ????? ?? ?? ????. ? ???? ???? ?? ? ???? YII? ?? ???? ??? ? ?? ?? ?? ??? ? ???? ?? ? ? ??? ???????.

IIS? Microsoft? ? ??? ? ? ??????? ????? ???? ?? ?? ? ? ?? ????????. 1) IIS ?? : ??? ?? ?? ???? ?? Windows ??? ??????. 2) ? ??? ??? : ? ? ???? ?? PowerShell ??? ???? ? ? ???? ????. 3) ?????? ? ?? : ?? ? ???? ????? ?? ?? ? ???? ?? ??? ? ?? ??? ??????. 4) ?? ??? : ?????? ? ??? ???? ??? ??? ????? ? ??? ??? ??????. 5) ?? ??? : IIS ?? ??? ??? ???? ??? ???? ?????.

IIS? PHP? ???? FastCGI ??? ?? ?????. 1. IIS? FASTCGI ??? ?? PHP? ???? PHP? ??? ? ????? ?????. 2. PHP? ????? IIS ????? ?? ???? ???? ???????. 3. ?? ???? FASTCGI ?? ??? ? PHP ??? ??? ?????. 4. ?? ???? PHP ?? ?? ? ?? ?? ??? ?? ? ? ????. 5. ???? ???? ?? ? ??? ? ?? ??? ???? ??? ?? ?? ? ? ????. 6. PHP ???? ? ??? ???? OPCache? ?????? ?? ???? ?????.

IIS? Windows?? ? ???? ??????? Microsoft? ? ?? ????????. WebHosting? ???? ?? ??? ? ? ??? ??? ? ??? ??? ???? ????. 1) IIS? ???? ?? ?? ? ?????? ?????. 2) ? ??? ???? ???, ???, ?? ?? ? ???? ? ??? ?????. 3) ?? ???? ??? ? ???? ???? ?? ???? ???? ?? ? ???? ???? ???? ???? ???? ?? ?? ?????.
