Muiden palvelimien jaettujen kansioiden käyttäminen ASP.NET Core -sovelluksista (IIS, sovellussarjan asetukset)

Sivu päivitetty :
Sivun luontipäivämäärä :

Toiminnan todentamisympäristö

Visuaalinen studio
  • Visuaalinen studio 2022
ASP.NET ydin
  • 6 (Razpr-sivut)
Windows Server
  • 2022 (ASP.NET ydinjärjestelmävaatimukset)
  • 2019 (jaettujen kansioiden käyttöönottopalvelin)
IIS
  • 10.0

Toimintaympäristö

En ole testannut sitä kaikessa, mutta sen pitäisi toimia suurimmaksi osaksi.

Visuaalinen studio
  • Kaikki, mikä voi kehittää ASP.NET tai ASP.NET Core -projektia
ASP.NET ydin
  • Mikä tahansa versio (MVC, Razor Pages, API)
ASP.NET
  • Mikä tahansa versio on hyväksyttävä
Windows Server
  • Windows Server 2008 tai uudempi
IIS
  • 7.0 tai uudempi

edellytys

  • ASP.NET Core -sovellukset on tarkoitettu toimimaan IIS:ssä. Muut verkkopalvelimet eivät pysty toteuttamaan näiden vihjeiden sisältöä

ympäristö

Se tarkistetaan seuraavassa ympäristössä.

Tietokoneiden ja palvelimien käyttötarkoitus
Windows 11 (paikallinen) Ympäristö ohjelmien kehittämiselle. Merkityksetön tämän artiklan tarkoituksen kannalta
SV2022Testi Ympäristö, jossa on IIS ja ASP.NET Core. Siirry jaettuun SV2019Test-kansioon täältä
SV2019Testi Palvelimet, joissa on jaettuja kansioita

Lisäksi eri asetukset ovat seuraavat.

Parametrin nimen arvo
Käytä käyttäjänimeä SharedUser
Jaetun kansion nimi SharedFolder

Luo ohjelma tiedostojen lukemista ja kirjoittamista varten jaetusta kansiosta ASP.NET Core -sovelluksesta

Kun herra / rouva vetää, napsauta vain painiketta,

  • Lataa tiedostot jaettuun kansioon ja näytä ne näytössä
  • Uuden tiedoston kirjoittaminen jaettuun kansioon

prosessi.

En ole vielä luonut jaettua kansiota, joten en voi debugata sitä, mutta se on yksinkertainen koodi, joten teen vain ohjelman toistaiseksi.

ASP.NET Core -projekti voi olla minkä tyyppinen, mutta tässä tapauksessa käytän Razor Pagesia.

Index.cshtml.cs ja lisää, mitä tapahtuu, kun painiketta napsautetaan. Palvelimen nimi kirjoitetaan suoraan, mutta säädä se hyvin todellisessa toiminnassa. Joissakin tapauksissa jaettu kansio ei ehkä ole käytettävissä, joten se on suljettu try-catchiin.

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 sisältää painikkeen ja viestin.

@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>
@* ここまで追加 *@

Kun olet luonut ohjelman, luo tiedosto, joka otetaan käyttöön palvelimella. Tässä tapauksessa käytämme julkaistun tiedoston sijoittamismenetelmää suoraan, mutta sillä ei ole väliä mitä menetelmää käytät. Lisäksi ohjelman järjestely ei ole tämän kärjen ydin, joten se on lueteltu yksinkertaistetulla tavalla.

Lisää julkaisumääritys.

Muuta asetuksia.

Asetuksia muutetaan kuvan osoittamalla tavalla. Tämä ei myöskään liity erityisesti tämän ajan tarkoitukseen, joten aseta se ympäristösi mukaan.

Julkaise ohjelma.

Kun olet julkaissut ohjelman, napsauta "Kohdesijainti" -linkkiä ja kansio, jossa on sijoitettavat tiedostot, avautuu.

Jaetun kansiopalvelimen luominen

Luo käyttäjä

Normaalisti, jos palvelin on erilainen, kullekin palvelimelle luotua käyttäjää kohdellaan sisäisesti täysin eri käyttäjänä. Luomalla tiedoston, jolla on sama käyttäjänimi ja salasana, voit ohittaa Windows-todennuksen toiseen palvelimeen. Tällä kertaa käytämme tätä päästäksesi jaettuun kansioon toisella palvelimella.

Muuten, jos olet tekemisissä palvelimien ja tilien kanssa verkkotunnuksessa, kuten Active Directory, voit määrittää molemmat palvelimet kyseiselle tilille, mikä yksinkertaistaa kokoonpanoa jossain määrin.

Käyttäjän luomismenettelyä ei kuvata yksityiskohtaisesti.

SharedUser Tässä tapauksessa luomme sen nimellä . Koska tämä käyttäjä ei käytä näyttöä tai muuta asetuksia, salasanaa ei voi muuttaa.

Jos jätät oletusasetuksen, voit kirjautua sisään tällä käyttäjällä etätyöpöydällä jne., joten poista ryhmästä Users .

Jaetun kansion luominen

Sillä ei ole väliä, missä luot sen. Tämä johtuu siitä, että muut palvelimet eivät välitä fyysisen kansion sijainnista. Tässä tapauksessa luomme kansion, joka on nimetty suoraan C-aseman alle SharedFolder , ja jaamme sen.

Avaa ominaisuudet ja määritä jakamisasetukset.

Jaetun kansion nimen tulee SharedFolder olla . Tämä nimi näkyy muille palvelimille. Lisää SharedUser käyttöoikeudet.

Everyone Poista nykyinen .

Vahvista "Muuta" -oikeudella.

Koska olemme lisänneet vain käyttöoikeuksia, joihin pääsee ulkopuolelta, asetamme sen sisäisesti SharedUser , jotta se voi toimia tässä kansiossa.

Vahvista "Muuta" -oikeudella.

Luo tiedosto toiminnon tarkistamiseksi.

On OK, jos voit käyttää Exploreria \\<サーバー名>\ toisesta tietokoneesta, kirjautuaSharedUser sisään ja tarkastella tiedostoa.

Sovelluspalvelimen rakentaminen

IIS:n asentaminen

Asenna se toistaiseksi oletusarvoisesti palvelimen hallinnasta. En mene menettelyn yksityiskohtiin.

Lisäominaisuuksia ei tarvita.

Muita IIS-palveluita ei tällä hetkellä tarvita.

ASP.NET Core Runtime Hosting -paketin asennus

Koska käytämme ASP.NET Core 6: ta, meidän on asennettava ajonaika vastaavasti. Lataa se seuraavasta URL-osoitteesta:

Jotta voit suorittaa ASP.NET Coren IIS: ssä, tarvitset jotain nimeltä "Hosting Bundle". Lataa "Hosting Bundle" ASP.NET Core Runtimesta.

Kun olet ladannut, suorita se palvelimella.

Asenna se noudattamalla ohjattua toimintoa.

Verkkosovellusten luominen ja käyttöönotto

Avaa Windowsin valvontatyökaluissa IIS (Internet Information Services) Manager.

Voit käyttää "oletussivustoa" sellaisenaan, mutta tällä kertaa luomme uuden sivuston. Oletussivusto käynnistyy automaattisesti, joten lopeta se.

Luo uusi Web-sivusto.

Tällä kertaa sivuston nimi on SharedFolderAccess , mutta sillä ei ole väliä.

Sovellussarja luodaan automaattisesti uudelle sivustolle.

Luo ja määritä haluamasi kansio, johon haluat sijoittaa ohjelman.

Portti 80 on merkitty "Oletussivusto" ja näet varoituksen, mutta voit ohittaa sen, jos se on jo poissa käytöstä.

Se on luotu.

Avaa Web-sivustossa määritetty kansio Windowsin Resurssienhallinnassa ja kopioi ja sijoita kaikki julkaistut ohjelmat sellaisenaan.

Avaa sivu IIS-linkistä ja katso, näkyykö näyttö. Voit avata ensin verkkoselaimen ja kirjoittaa URL-osoitteen suoraan.

Muuten, vaikka napsautat painiketta tässä tilassa, saat virheen, koska käyttöoikeusasetusta ei ole vielä suoritettu.

Luo käyttäjä

Luo sovelluspalvelimeen sama käyttäjä SharedUser kuin jaettuun kansiopalvelimeen. Varmista, että myös salasanasi täsmäävät. Vaiheet ovat täsmälleen samat.

Sovellussarjan käyttöoikeuksien muuttaminen

Web-ohjelmien käyttö määräytyy sovellussarjan mukaan. Oletuksena sillä on vain ApplicationPoolIdentity oikeudet suorittaa verkkosovelluksia.

Muuttamalla tämän oikeuden arvoksi SharedUser , verkko-ohjelma voi toimia määrittämäsi käyttäjän oikeuksilla. Näin verkko-ohjelmat SharedUser voivat käyttää jaettuja kansioita .

Kun avaat IIS-palveluiden hallinnan, valitse Sovellusvarannot.

Se lisätään SharedFolderAccess automaattisesti, kun luot verkkosivuston, joten napsauta sitä hiiren kakkospainikkeella ja valitse "Lisäasetukset".

Prosessimallissa on "ID", joten napsauta oikealla olevaa painiketta.

Valitse "Mukautettu tili" ja napsauta "Asetukset" -painiketta.

SharedUser Anna ja vahvista käyttäjänimesi ja salasanasi.

Toiminnan vahvistaminen

Siirry verkkosivulle ja napsauta painiketta. Jos tekstitiedoston sisältö näytetään, se onnistuu.

Varmista, että jaetussa kansiossa on myös uusi tiedosto.