我有一個Azure應用服務,託管一個WordPress站點。我想編寫一個控制檯應用程序,它將從網站(文件存儲)複製文件並將其粘貼到部署插槽中。所有在線資源都討論了連接文件存儲的「訪問密鑰」,但我在應用服務門戶中沒有看到類似的內容。我可以使用部署憑證或Web部署憑證來訪問這些文件嗎?Azure應用服務訪問文件存儲使用webjob複製內容
0
A
回答
3
根據您的描述,我建議您可以使用webjob的文件tigger來實現您的要求。
您可以使用文件跳跳虎看在你的系統文件路徑的文件的變化,你會發現部署插槽的FTP憑據,然後用它來文件形式生產文件夾上傳到部署插槽由webjob的擴展包。
更多細節,你可以參考遵循圖像和代碼:
1.Find ftp的憑證和設定的密碼
設置用戶名和密碼
2.從nugget包管理器安裝Microsoft.Azure.WebJobs.Extensions並寫入t他的webjob方法。
代碼象下面這樣:
注意:默認文件路徑爲d:/家庭/數據,如果你的網站文件夾內的文件,你需要如下改變其路徑。
static void Main()
{
var config = new JobHostConfiguration();
FilesConfiguration filesConfig = new FilesConfiguration();
string home = Environment.GetEnvironmentVariable("HOME");
if (!string.IsNullOrEmpty(home))
{
filesConfig.RootPath = Path.Combine(home, "site");
}
config.UseFiles(filesConfig);
var host = new JobHost(config);
// The following code ensures that the WebJob will be running continuously
host.RunAndBlock();
}
功能:
public static void ImportFile(
[FileTrigger(@"wwwroot\doc\{name}", "*.*", WatcherChangeTypes.Created | WatcherChangeTypes.Changed)] Stream file,
FileSystemEventArgs fileTrigger,
TextWriter log)
{
log.WriteLine(string.Format("Processed input file '{0}'!", fileTrigger.Name));
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(string.Format("ftp://yourftpurl.ftp.azurewebsites.windows.net/site/wwwroot/doc/{0}", fileTrigger.Name));
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(@"username", "password");
Stream requestStream = request.GetRequestStream();
file.CopyTo(requestStream);
requestStream.Close();
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
log.WriteLine("Upload File Complete, status {0}", response.StatusDescription);
response.Close();
}
結果:
如果添加文件到生產的doc文件夾,網頁作業將它複製到deploymeny_solt的doc文件夾中。
0
您可以使用 「天青網站複製」 推廣。一個插槽就像另一個天藍色的應用程序服務,所以它應該在插槽之間進行復制。
在你的部署插槽,你想要的一切複製到,下載通過單擊總覽標籤發佈設置「獲取發佈配置文件」
在你的應用程序服務的生產槽去擴展,並添加站點複製擴展。然後在安裝之後,點擊它並點擊「瀏覽」。這將使用配置選項打開一個新窗口。
在配置窗口中,上傳發佈設置文件。
相關問題
- 1. Azure的應用服務文件訪問
- 2. Azure Webjob - 訪問本地文件系統
- 3. Azure獨立用戶存儲和訪問控制服務服務標識
- 4. 使用Raspbian下的Python在Azure存儲上訪問表服務
- 5. 在Azure WebJob中訪問C#控制檯應用程序的文件路徑
- 6. 使用java從Azure存儲獲取文檔/文件內容。
- 7. 將WebJob添加到Azure應用服務 - 權限問題
- 8. 使用Tomcat訪問存儲在服務器上的文件webapp
- 9. Azure WebJob訪問被拒絕
- 10. 訪問Azure blob存儲使用C++
- 11. 使用Codeigniter訪問Azure blob存儲
- 12. 訪問文件系統Azure的應用服務
- 13. Azure的文件訪問/訪問在Windows Azure雲服務
- 14. 使用Azure存儲替換Win2008文件服務器?
- 15. 如何在Web App服務中使用「Azure文件存儲」?
- 16. ASP.NET - 訪問複製內容
- 17. 使用Azure Cli使用SAS訪問Azure存儲
- 18. 無法通過Python中的azure存儲包訪問blob存儲WebJob
- 19. Azure應用程序服務:WebJob如何向WebAPI發送響應?
- 20. 如何使用C#.NET和Powershell複製Azure Data Lake存儲內的文件
- 21. 使用VBScript複製文件夾內容
- 22. Azure - 限制只能訪問應用服務
- 23. 訪問Azure內的blob存儲使用帶寬嗎?
- 24. 從Sinatra應用程序訪問存儲在服務器上的文件
- 25. Azure WebJob在應用服務與Autoswap發佈後刪除
- 26. 使用REST API從Django訪問Github存儲庫中的文件及其內容
- 27. 從azure blob存儲服務webapp靜態內容
- 28. 使用ImageResizer的Azure C#WebJob未正確設置內容類型
- 29. Azure雲應用程序文件訪問
- 30. 我的Azure雲服務存儲文件應該放在哪裏?
那麼,如果FTP對你來說可以,那麼這些證書就可以直接作爲FTP證書使用,讓你訪問文件系統。 – juunas
根據您的描述,我無法清楚地瞭解網站(文件存儲)。你的意思是你將文件存儲在一個文件存儲共享(azure存儲服務)中,或者只存儲在應用程序文件系統的共享路徑中?你如何存儲文件,通過你的應用程序或其他方式上傳?這兩件事將決定你的webjobtigger將使用。訪問密鑰用於訪問Azure存儲服務,如果要訪問應用程序服務中的文件系統,則可以使用ftp憑證。 –
我不是隻使用文件系統的文件存儲,我想創建一個webjob來訪問文件系統中的文件並將文件複製到一個插槽中。 –