Más kiszolgálókon lévő megosztott mappák elérése ASP.NET Core alkalmazásokból (IIS, alkalmazáskészlet-beállítások)
Művelet-ellenőrzési környezet
- Visual Studio
-
- Visual Studio 2022
- ASP.NET mag
-
- 6 (Razpr oldalak)
- Windows Server
-
- 2022 (ASP.NET alapvető rendszerkövetelmények)
- 2019 (megosztott mappa központi telepítési kiszolgálója)
- IIS
-
- 10.0
Működési környezet
Nem teszteltem mindenben, de nagyrészt működnie kell.
- Visual Studio
-
- Bármi, ami ASP.NET vagy ASP.NET Core projektet fejleszthet
- ASP.NET mag
-
- Bármely verzió (MVC, Razor Pages, API)
- ASP.NET
-
- Bármely verzió elfogadható
- Windows Server
-
- Windows Server 2008 vagy újabb
- IIS
-
- 7.0 vagy újabb
előfeltétel
- ASP.NET Az alapvető alkalmazások az IIS szolgáltatásban való futtatásra szolgálnak. Más webszerverek nem tudják megvalósítani ezeknek a tippeknek a tartalmát
környezet
Ellenőrzése a következő környezetben történik.
APC-k és szerverek | használatának célja |
---|---|
Windows 11 (helyi) | Környezet a programok fejlesztéséhez. A cikk célja szempontjából irreleváns |
SV2022Teszt | Az IIS-t és a ASP.NET Core-t futtató környezet. Az SV2019Test megosztott mappa elérése innen |
SV2019Teszt | Megosztott mappákkal rendelkező kiszolgálók |
Ezenkívül a különböző beállítások a következők.
Paraméternév | értéke |
---|---|
Hozzáférési felhasználónév | Megosztott felhasználó |
Megosztott mappa neve | Megosztott mappa |
Program létrehozása megosztott mappában lévő fájlok olvasásához és írásához ASP.NET Core-alkalmazásból
Mr./Ms. húzásként egyszerűen kattintson a gombra,
- Fájlok betöltése megosztott mappába és megjelenítése a képernyőn
- Új fájl írása megosztott mappába
folyamat.
Még nem hoztam létre megosztott mappát, így nem tudok hibakeresést végezni, de ez egyszerű kód, ezért egyelőre csak egy programot készítek.
ASP.NET Core projekt bármilyen típusú lehet, de ebben az esetben a Razor Pages-t használom.
Index.cshtml.cs
és adja hozzá, hogy mi történik, amikor rákattintanak a gombra.
A szerver neve közvetlenül van írva, de kérjük, állítsa be jól a tényleges működés során.
Bizonyos esetekben előfordulhat, hogy a megosztott mappa nem érhető el, ezért egy próbálkozási fogásba van zárva.
public class IndexModel : PageModel
{
// 省略
public void OnGet() { }
// ここから追加
public void OnPost()
{
var serverName = "SV2019Test";
try
{
var readFilePath = $@"\\{serverName}\SharedFolder\Input.txt";
var writeFilePath = $@"\\{serverName}\SharedFolder\Output.txt";
// 共有フォルダからファイルを読み込む
var text = System.IO.File.ReadAllText(readFilePath);
// 別ファイルとして共有フォルダに書き込む
System.IO.File.WriteAllText(writeFilePath, text);
// 読み込んだ内容を画面に表示する
ViewData["Message"] = text;
}
catch (Exception ex)
{
ViewData["Message"] = ex;
}
}
// ここまで追加
}
Index.cshtml
van egy gombja és egy üzenete.
@page
@model IndexModel
@{
ViewData["Title"] = "Home page";
}
<div class="text-center">
<h1 class="display-4">Welcome</h1>
<p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p>
</div>
@* ここから追加 *@
<form method="post">
<button type="submit">処理実行</button>
</form>
<div>@ViewData["Message"]</div>
@* ここまで追加 *@
A program létrehozása után hozzon létre egy fájlt a kiszolgálóra történő telepítéshez. Ebben az esetben a közzétett fájl közvetlen elhelyezésének módját fogjuk használni, de nem számít, melyik módszert használja. Ezenkívül a program elrendezése nem a lényege ennek a tippnek, ezért egyszerűsített módon van felsorolva.
Adjon hozzá egy közzétételi konfigurációt.
Módosítsa a beállításokat.
A beállítások az ábrán látható módon módosulnak. Ez szintén nem kapcsolódik különösebben ennek az időnek a céljához, ezért kérjük, állítsa be a környezetének megfelelően.
Tegye közzé a programot.
A program közzététele után kattintson a "Célhely" linkre, és megnyílik az elhelyezni kívánt fájlokat tartalmazó mappa.
Megosztott mappakiszolgáló létrehozása
Felhasználó létrehozása
Általában, ha a kiszolgáló eltérő, az egyes kiszolgálókon létrehozott felhasználót belsőleg teljesen más felhasználóként kezelik. Ha ugyanazzal a felhasználónévvel és jelszóval hoz létre fájlt, kihagyhatja a Windows-hitelesítést egy másik kiszolgálóra. Ezúttal ezt fogjuk használni egy másik szerver megosztott mappájának elérésére.
Egyébként, ha olyan tartományban lévő kiszolgálókkal és fiókokkal foglalkozik, mint az Active Directory, mindkét kiszolgálót beállíthatja ezzel a fiókkal, ami bizonyos mértékig leegyszerűsíti a konfigurációt.
A felhasználó létrehozásának eljárását nem ismertetjük részletesen.
SharedUser
Ebben az esetben a névvel hozzuk létre.
Mivel ez a felhasználó nem működteti a képernyőt, és nem módosítja a beállításokat, a jelszó nem módosítható.
Ha elhagyja az alapértelmezett értéket, bejelentkezhet ezzel a felhasználóval a Távoli asztal stb. segítségével, ezért kérjük, távolítsa el a csoportból Users
.
Megosztott mappa létrehozása
Nem számít, hol hozod létre. Ennek az az oka, hogy más kiszolgálók nem törődnek a fizikai mappa helyével.
Ebben az esetben létrehozunk egy mappát, amelyet közvetlenül a C meghajtó alatt SharedFolder
nevezünk el, és megosztjuk azt.
Nyissa meg a tulajdonságokat, és konfigurálja a megosztási beállításokat.
A megosztott mappa SharedFolder
nevének . Ez a név látható lesz a többi kiszolgáló számára.
Adja hozzá SharedUser
az engedélyeket.
Everyone
Törölje a meglévő .
Erősítse meg a "Módosítás" engedéllyel.
Mivel csak olyan engedélyeket adtunk hozzá, amelyek kívülről érhetők el, belsőleg SharedUser
állítjuk be, hogy ebben a mappában működhessen.
Erősítse meg a "Módosítás" engedéllyel.
Hozzon létre egy fájlt a művelet ellenőrzéséhez.
Rendben van, ha egy másik számítógépről elérheti az Intézőt \\<サーバー名>\
, bejelentkezhetSharedUser
a segítségével, és megtekintheti a fájlt.
Alkalmazáskiszolgáló létrehozása
Az IIS telepítése
Egyelőre alapértelmezés szerint telepítse a kiszolgálókezelőből. Nem megyek bele az eljárás részleteibe.
Nincs szükség további funkciókra.
Jelenleg nincs szükség további IIS-szolgáltatásokra.
ASP.NET Core Runtime tárhelycsomag telepítése
Mivel ASP.NET Core 6-ot használjuk, ennek megfelelően kell telepítenünk a futtatókörnyezetet. Töltse le a következő URL-címről:
A ASP.NET Core futtatásához az IIS-ben szüksége van valamire, amit "Hosting Bundle" -nek hívnak. Töltse le a "tárhelycsomagot" a ASP.NET Core futtatókörnyezetből.
A letöltés után futtassa a szerveren.
A telepítéshez kövesse a varázslót.
Webalkalmazások létrehozása és telepítése
A Windows felügyeleti eszközök közül nyissa meg az Internet Information Services (IIS) kezelőjét.
Használhatja az "Alapértelmezett weboldalt" úgy, ahogy van, de ezúttal új webhelyet hozunk létre. Az alapértelmezett webhely automatikusan elindul, ezért kérjük, állítsa le.
Hozzon létre egy új webhelyet.
Ezúttal a webhely neve SharedFolderAccess
, de ez nem számít.
Az alkalmazáskészlet automatikusan létrejön az új helyhez.
Hozzon létre és adjon meg egy tetszőleges mappát, ahol el szeretné helyezni a programot.
A 80-as port "Alapértelmezett webhely" címkével van ellátva, és figyelmeztetést fog látni, de figyelmen kívül hagyhatja, ha már nem működik.
Létrehozták.
Nyissa meg a webhelyen megadott mappát a Windows Intézőben, és másolja és helyezze el az összes közzétett programot úgy, ahogy vannak.
Nyissa meg a lapot az IIS hivatkozásból, és ellenőrizze, hogy megjelenik-e a képernyő. Először megnyithat egy webböngészőt, és közvetlenül megadhatja az URL-címet.
Egyébként, még akkor is, ha ebben az állapotban rákattint a gombra, hibaüzenetet kap, mert az engedélybeállítás még nem fejeződött be.
Felhasználó létrehozása
Hozza létre ugyanazt a felhasználót SharedUser
az alkalmazáskiszolgálón, mint a megosztott mappakiszolgálón. Győződjön meg arról, hogy a jelszavak is egyeznek. A lépések pontosan ugyanazok.
Alkalmazáskészlet engedélyeinek módosítása
A webes programok általi hozzáférést az alkalmazáskészlet határozza meg.
Alapértelmezés szerint csak ApplicationPoolIdentity
a webalkalmazások futtatásához szükséges jogosultságokkal rendelkezik.
Ha ezt a jogosultságot SharedUser
értékre módosítja, a webes program a beállított felhasználó jogosultságaival működhet.
Ez lehetővé teszi, hogy a webprogramok SharedUser
hozzáférjenek a megosztott mappákhoz.
Az IIS-kezelő megnyitásakor válassza az Alkalmazáskészletek lehetőséget.
A webhely létrehozásakor automatikusan hozzáadásra kerül SharedFolderAccess
, ezért kattintson rá jobb gombbal, és válassza a "Speciális" lehetőséget.
Van egy "ID" a folyamatmodellben, ezért kattintson a jobb oldali gombra.
Válassza az "Egyéni fiók" lehetőséget, majd kattintson a "Beállítások" gombra.
SharedUser
Írja be és erősítse meg felhasználónevét és jelszavát.
A működés megerősítése
Lépjen a weboldalra, és kattintson a gombra. Ha megjelenik a szövegfájl tartalma, akkor sikeres.
Győződjön meg arról, hogy a megosztott mappában is van egy új fájl.