Problémy s konfigurací serveru a klienta v nasazeních ClickOnce
Pokud používáte Internetová informační služba (IIS) na Windows Serveru a vaše nasazení obsahuje typ souboru, který Systém Windows nerozpozná, například soubor aplikace Microsoft Word, služba IIS odmítne tento soubor přenést a vaše nasazení nebude úspěšné.
Některé webové servery a software webových aplikací, například ASP.NET, navíc obsahují seznam souborů a typů souborů, které nelze stáhnout. Například ASP.NET zabrání stahování všech souborů Web.config . Tyto soubory můžou obsahovat citlivé informace, jako jsou uživatelská jména a hesla.
I když toto omezení by nemělo způsobovat žádné problémy se stahováním základních souborů ClickOnce, jako jsou manifesty a sestavení, toto omezení vám může zabránit ve stahování datových souborů zahrnutých jako součást aplikace ClickOnce. V ASP.NET můžete tuto chybu vyřešit odebráním obslužné rutiny, která zakazuje stahování těchto souborů ze správce konfigurace služby IIS. Další podrobnosti najdete v dokumentaci k serveru IIS.
Některé webové servery mohou blokovat soubory s příponami, jako jsou .dll, .config a .mdf. Aplikace založené na Windows obvykle obsahují soubory s některými z těchto rozšíření. Pokud se uživatel pokusí spustit aplikaci ClickOnce, která přistupuje k blokovaným souborům na webovém serveru, dojde k chybě. Místo odblokování všech přípon souborů clickOnce publikuje ve výchozím nastavení všechny soubory aplikace s příponou .deploy . Správce proto musí pouze nakonfigurovat webový server tak, aby odblokovali následující tři přípony souborů:
.Aplikace
.Manifestu
.Nasazení
Tuto možnost však můžete zakázat zrušením zaškrtnutí možnosti Použít příponu souboru .deploy v dialogovém okně Možnosti publikování, v takovém případě musíte webový server nakonfigurovat tak, aby odblokuje všechna přípony souborů používaná v aplikaci.
Budete muset nakonfigurovat .manifest, .application a .deploy, například pokud používáte službu IIS, ve které jste nenainstalovali rozhraní .NET Framework, nebo pokud používáte jiný webový server (například Apache).
ClickOnce a Secure Sockets Layer (SSL)
Aplikace ClickOnce bude fungovat správně přes PROTOKOL SSL, s výjimkou případů, kdy Internet Explorer vyvolá výzvu k certifikátu SSL. Výzva může být vyvolána v případě, že je s certifikátem něco špatně, například když se názvy webů neshodují nebo vypršela platnost certifikátu. Pokud chcete, aby ClickOnce fungovalo přes připojení SSL, ujistěte se, že je certifikát aktuální a že data certifikátu odpovídají datům lokality.
ClickOnce a ověřování proxy serveru
ClickOnce poskytuje podporu integrovaného ověřování proxy systému Windows počínaje rozhraním .NET Framework 3.5. Nejsou vyžadovány žádné specifické direktivy machine.config. ClickOnce neposkytuje podporu pro jiné ověřovací protokoly, jako je Basic nebo Digest.
Tuto funkci lze také povolit pomocí opravy hotfix pro rozhraní .NET Framework 2.0. Další informace naleznete v tématu OPRAVA: Chybová zpráva při pokusu o instalaci aplikace ClickOnce, kterou jste vytvořili v rozhraní .NET Framework 2.0 na klientský počítač, který je nakonfigurován pro použití proxy serveru: "Vyžaduje se ověřování proxy".
Další informace najdete v elementu <defaultProxy> (nastavení sítě).
Kompatibilita ClickOnce a webového prohlížeče
Instalace ClickOnce se v současné době spustí jenom v případě, že se pomocí Internet Exploreru otevře adresa URL manifestu nasazení. Nasazení, jehož adresa URL je spuštěna z jiné aplikace, například aplikace Microsoft Office Outlook, se úspěšně spustí pouze v případě, že je aplikace Internet Explorer nastavena jako výchozí webový prohlížeč.
Poznámka:
Mozilla Firefox je podporován, pokud poskytovatel nasazení není prázdný nebo je nainstalována rozšíření Microsoft .NET Framework Assistant. Toto rozšíření je zabalené s rozhraním .NET Framework 3.5 SP1. V případě podpory XBAP se modul plug-in NPWPF aktivuje v případě potřeby.
Aktivace aplikací ClickOnce prostřednictvím skriptování prohlížeče
Pokud jste vyvinuli vlastní webovou stránku, která spouští aplikaci ClickOnce pomocí aktivního skriptování, můžete zjistit, že se aplikace nespustí na některých počítačích. Internet Explorer obsahuje nastavení s názvem Automatické výzvy ke stažení souborů, které toto chování ovlivňuje. Toto nastavení je k dispozici na kartě Zabezpečení v nabídce Možnosti , která toto chování ovlivňuje. Označuje se jako Automatické zobrazování výzvy ke stažení souborů a je uvedená pod kategorií Stažené soubory . Vlastnost je nastavena na povolit ve výchozím nastavení pro intranetové webové stránky a zakázatve výchozím nastavení pro internetové webové stránky. Pokud je toto nastavení nastaveno na Hodnotu Disable, všechny pokusy o aktivaci aplikace ClickOnce programově (například přiřazením adresy URL vlastnosti document.location
) budou blokovány. Za těchto okolností můžou uživatelé spouštět aplikace pouze prostřednictvím stahování iniciovaného uživatelem, například kliknutím na hypertextový odkaz nastavený na adresu URL aplikace.
Další problémy s konfigurací serveru
Požadovaná oprávnění Správa istratoru
Pokud publikujete pomocí protokolu HTTP, musíte mít na cílovém serveru oprávnění Správa istrator. Služba IIS vyžaduje tuto úroveň oprávnění. Pokud nepublikujete pomocí protokolu HTTP, potřebujete oprávnění k zápisu pouze pro cílovou cestu.
Problémy s ověřováním serveru
Když publikujete na vzdálený server, který má vypnutý anonymní přístup, zobrazí se následující upozornění:
"The files could not be downloaded from http://<remoteserver>/<myapplication>/. The remote server returned an error: (401) Unauthorized."
Poznámka:
Ověřování NTLM (NT challenge-response) můžete nastavit tak, aby fungovalo, pokud se na webu zobrazí výzva k zadání přihlašovacích údajů kromě výchozích přihlašovacích údajů, a v dialogovém okně zabezpečení po zobrazení výzvy klepněte na tlačítko OK , pokud chcete uložit zadané přihlašovací údaje pro budoucí relace. Toto alternativní řešení ale nebude fungovat pro základní ověřování.
Použití webových serverů třetích stran
Pokud nasazujete aplikaci ClickOnce z jiného webového serveru než iis, může dojít k potížím, pokud server vrací nesprávný typ obsahu pro klíčové soubory ClickOnce, například manifest nasazení a manifest aplikace. Pokud chcete tento problém vyřešit, podívejte se do dokumentace nápovědy k webovému serveru o tom, jak na server přidat nové typy obsahu, a ujistěte se, že jsou na místě všechna mapování přípon názvů souborů uvedená v následující tabulce.
Přípona názvu souboru | Typ obsahu |
---|---|
.application |
application/x-ms-application |
.manifest |
application/x-ms-manifest |
.deploy |
application/octet-stream |
.msu |
application/octet-stream |
.msp |
application/octet-stream |
ClickOnce a mapované jednotky
Pokud k publikování aplikace ClickOnce používáte Visual Studio, nemůžete jako umístění instalace zadat mapovanou jednotku. Aplikaci ClickOnce však můžete upravit tak, aby se nainstalovala z mapované jednotky pomocí Manifest Generator a Editor (Mage.exe a MageUI.exe). Další informace naleznete v nástroji Mage.exe (Generování manifestu a editing Tool) a MageUI.exe (Generování a úpravy manifestu, grafický klient).
Protokol FTP není podporován pro instalaci aplikací.
ClickOnce podporuje instalaci aplikací z libovolného webového serveru HTTP 1.1 nebo souborového serveru. Ftp, protokol FILE Transfer Protocol, není podporován pro instalaci aplikací. K publikování aplikací můžete použít protokol FTP. Následující tabulka shrnuje tyto rozdíly:
Typ adresy URL | Popis |
---|---|
Ftp:// | Aplikaci ClickOnce můžete publikovat pomocí tohoto protokolu. |
http:// | Aplikaci ClickOnce můžete nainstalovat pomocí tohoto protokolu. |
https:// | Aplikaci ClickOnce můžete nainstalovat pomocí tohoto protokolu. |
Soubor:// | Aplikaci ClickOnce můžete nainstalovat pomocí tohoto protokolu. |
Windows Firewall
Ve výchozím nastavení windows povolí bránu Windows Firewall. Pokud vyvíjíte aplikaci na počítači s nainstalovaným Systémem Windows, budete moci publikovat a spouštět aplikace ClickOnce z místního serveru se spuštěnou službou IIS. Pokud však neotevřete bránu Windows Firewall, nelze získat přístup k serveru se spuštěnou službou IIS z jiného počítače. Pokyny ke správě brány Windows Firewall najdete v nápovědě systému Windows.
Windows Server: Povolení rozšíření serveru FrontPage
Aplikace FrontPage Server Extensions od Microsoftu se vyžadují pro publikování aplikací na webový server windows, který používá protokol HTTP.
Windows Server ve výchozím nastavení nemá nainstalované rozšíření FrontPage Server Extensions. Pokud chcete pomocí sady Visual Studio publikovat na webový server Windows Serveru, který používá protokol HTTP s rozšířeními FrontPage Server Extensions, musíte nejprve nainstalovat rozšíření FrontPage Server Extensions. Instalaci můžete provést pomocí nástroje správa serveru ve Windows Serveru.
Windows Server: Uzamčené typy obsahu
Služba IIS ve Windows Serveru 2003 uzamkne všechny typy souborů s výjimkou určitých známých typů obsahu (například .htm, .html, .txt atd.). Pokud chcete povolit nasazení aplikací ClickOnce pomocí tohoto serveru, musíte změnit nastavení služby IIS tak, aby umožňovalo stahování souborů typu .application, .manifest a dalších vlastních typů souborů používaných vaší aplikací.
Pokud nasadíte pomocí serveru IIS, spusťte inetmgr.exe a přidejte nové typy souborů pro výchozí webovou stránku:
Pro přípony .application a .manifest by měl být typ MIME "application/x-ms-application". U jiných typů souborů by měl být typ MIME "application/octet-stream".
Pokud vytvoříte typ MIME s příponou "<em>" a typem MIME "application/octet-stream", umožní stažení souborů odblokovaného typu souboru. (Blokované typy souborů, jako jsou *.aspx a *.asmx , nelze stáhnout.)
Konkrétní pokyny ke konfiguraci typů MIME na Windows Serveru naleznete v tématu Postup přidání typu MIME na web nebo aplikaci.
Mapování typů obsahu
Při publikování přes protokol HTTP by měl být typ obsahu (označovaný také jako typ MIME) pro soubor .application "application/x-ms-application". Pokud máte na serveru nainstalované rozhraní .NET Framework 2.0, nastaví se automaticky. Pokud toto není nainstalováno, musíte vytvořit přidružení typu MIME pro vroot aplikace ClickOnce (nebo celý server).
Pokud nasadíte pomocí serveru IIS, spusťte inetmgr.exe a přidejte nový typ obsahu "application/x-ms-application" pro příponu .application .
Problémy s kompresí HTTP
Pomocí Technologie ClickOnce můžete provádět stahování, která používá kompresi HTTP, technologii webového serveru, která používá algoritmus GZIP ke komprimaci datového streamu před odesláním datového proudu klientovi. Klient (v tomto případě ClickOnce) před čtením souborů dekomprimuje datový proud.
Pokud používáte službu IIS, můžete snadno povolit kompresi HTTP. Pokud však povolíte kompresi HTTP, je povolena pouze pro určité typy souborů – konkrétně pro HTML a textové soubory. Chcete-li povolit kompresi pro sestavení (.dll), XML (.xml), manifesty nasazení (.application) a manifesty aplikací (.manifest), musíte tyto typy souborů přidat do seznamu typů, které má služba IIS komprimovat. Dokud do nasazení nepřidáte typy souborů, budou komprimovány pouze textové soubory a soubory HTML.
Podrobné pokyny ke službě IIS naleznete v tématu Určení dalších typů dokumentů pro kompresi HTTP.