2017-07-16 1 views
4

Wir haben die Suche mithilfe von Lucene.Net implementiert, Indizes werden im Azure-Speicherordner gespeichert. Vor einigen Tagen haben wir unsere Webanwendung von Azure CloudService nach Azure AppService verschoben. Wenn wir laufen diese lokal es wie erwartet funktioniert, funktioniert auch in Cloud Aber wenn wir unsere Web-Anwendung auf Azure AppService veröffentlicht haben wir unter Ausnahme:Zugriff auf Azure Storage mit Lucene.Net und Azure App Service nicht möglich

System.UnauthorizedAccessException: Zugriff auf den Pfad ‚D: \ zu ' ist abgelehnt.

versucht, AzureDirectory und Azure Storage-Pakete zu aktualisieren, aber es funktioniert nicht.

Irgendeine Idee?

+0

zuvor die Indizes waren in der Cloud-Service oder in Azure-Speicher zu ändern? –

+0

im azure-Speicher haben wir nur die Web-App in den appservice verschoben. –

Antwort

4

Danke, war Lösung Lucene.Net.Store.Azure.AzureDirectory s CacheDirectory Weg zu D:/Home/AzureDirectory

AzureDirectory(cloudStorageAccount, containerName, FSDirectory.Open(new DirectoryInfo("D:/Home/AzureDirectory"))) 

Wie Sie erwähnt hatte ich keine d:\ Zugang

1

Sie haben keinen d:\ Zugriff. In Web-Apps lebt Ihre App unter d:\home (genauer d:\home\site).

Auch - das ist nicht "Azure Storage" - dieser Begriff bezieht sich auf Blob-Speicher.

2

versucht AzureDirectory

Als David Makogon erwähnt zu aktualisieren, dass in der Azure WebApp, wir haben keinen Zugang oder D Zugang zu erstellen: \ AzureDirectory Ordner. Wir könnten mehr Informationen von der Azure WebApp Sandbox bekommen. Im Folgenden ist der Ausschnitt aus dem Dokument

Dateisystem Einschränkungen/Überlegungen

Anwendungen in Hinblick auf den Zugang des Dateisystems stark eingeschränkt sind.

Startseite Verzeichniszugriff (d: \ home)

Jede Azure Web App verfügt über ein Home-Verzeichnis gespeichert/gesichert durch Azure Storage. In dieser Netzwerkfreigabe speichern Anwendungen ihren Inhalt. Dieses Verzeichnis ist für die Sandbox mit Lese-/Schreibzugriff verfügbar.

Nach der Ausnahme, die Sie erwähnt, scheint es, dass einige Code den Ordner D zugreifen möchten: \ AzureDirectory aber es ist nicht in der Azure WebApp existierte. Wir könnten auch unsere WebApp im Azure remote debuggen, um den zugehörigen Code zu finden. Weitere Informationen finden Sie unter Remote debugging web apps.

Verwandte Themen