Prieiga prie bendrinamų aplankų kituose serveriuose iš ASP.NET Core programų (IIS, taikomųjų programų telkinio parametrai)
Veikimo tikrinimo aplinka
- Vizualinė studija
-
- "Visual Studio 2022"
- ASP.NET branduolys
-
- 6 ("Razpr" puslapiai)
- "Windows" serveris
-
- 2022 m. (ASP.NET pagrindiniai sistemos reikalavimai)
- 2019 m. (bendro naudojimo aplanko diegimo serveris)
- IIS
-
- 10.0
Darbo aplinka
Aš to neišbandžiau visame kame, bet jis turėtų veikti didžiąja dalimi.
- Vizualinė studija
-
- Viskas, kas gali sukurti ASP.NET ar ASP.NET pagrindinį projektą
- ASP.NET branduolys
-
- Bet kuri versija (MVC, "Razor" puslapiai, API)
- ASP.NET
-
- Bet kuri versija yra priimtina
- "Windows" serveris
-
- "Windows Server 2008" arba naujesnė versija
- IIS
-
- 7.0 arba naujesnė versija
Prielaida
- ASP.NET Pagrindinės programos skirtos veikti IIS. Kiti žiniatinklio serveriai negalės įgyvendinti šių patarimų turinio
Aplinkos
Jis tikrinamas šioje aplinkoje.
Kompiuterių ir serverių | naudojimo tikslas |
---|---|
"Windows 11" (vietinis) | Programų kūrimo aplinka. Nesusijęs su šio straipsnio tikslu |
SV2022Testas | Aplinka, kurioje veikia IIS ir ASP.NET branduolys. Pasiekite SV2019Test bendrinamą aplanką iš čia |
SV2019Testas | Serveriai su bendrai naudojamais aplankais |
Be to, įvairūs nustatymai yra tokie.
Parametro pavadinimo | reikšmė |
---|---|
Pasiekite vartotojo vardą | Bendrinamas naudotojas |
Bendro naudojimo aplanko pavadinimas | "SharedFolder" |
Programos, skirtos failams skaityti ir rašyti iš bendrinamo aplanko, kūrimas iš "ASP.NET Core" programos
Kai ponas /ponia traukia, tiesiog spustelėkite mygtuką,
- Įkelkite failus į bendrinamą aplanką ir rodykite juos ekrane
- Naujo failo įrašymas į bendro naudojimo aplanką
procesas.
Dar nesukūriau bendrinamo aplanko, todėl negaliu jo derinti, bet tai paprastas kodas, todėl kol kas tiesiog sukursiu programą.
ASP.NET Pagrindinis projektas gali būti bet kokio tipo, bet šiuo atveju aš naudoju "Razor Pages".
Index.cshtml.cs
ir pridėkite, kas nutinka spustelėjus mygtuką.
Serverio pavadinimas parašytas tiesiogiai, tačiau gerai jį sureguliuokite realiai veikdami.
Kai kuriais atvejais bendrinamas aplankas gali būti nepasiekiamas, todėl jis pridedamas prie bandomojo sugavimo.
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
turi mygtuką ir pranešimą.
@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>
@* ここまで追加 *@
Sukūrę programą, sukurkite failą, kurį norite įdiegti serveryje. Tokiu atveju mes naudosime paskelbto failo įdėjimo metodą tiesiogiai, tačiau nesvarbu, kurį metodą naudojate. Be to, programos išdėstymas nėra šio patarimo esmė, todėl jis pateikiamas supaprastintai.
Publikavimo konfigūracijos įtraukimas.
Pakeiskite nustatymus.
Nustatymai keičiami taip, kaip parodyta paveikslėlyje. Tai taip pat nėra ypač susiję su šio laiko tikslu, todėl nustatykite jį pagal savo aplinką.
Publikuokite programą.
Paskelbę programą, spustelėkite nuorodą "Tikslinė vieta" ir atsidarys aplankas su failais, kuriuos norite įdėti.
Bendro naudojimo aplankų serverio kūrimas
Vartotojo kūrimas
Paprastai, jei serveris yra skirtingas, kiekviename serveryje sukurtas vartotojas viduje laikomas visiškai skirtingu vartotoju. Sukūrę failą su tuo pačiu vartotojo vardu ir slaptažodžiu, galite praleisti "Windows" autentifikavimą į kitą serverį. Šį kartą tai naudosime norėdami pasiekti bendrinamą aplanką kitame serveryje.
Beje, jei dirbate su serveriais ir paskyromis tokiame domene kaip "Active Directory", galite nustatyti abu serverius naudodami tą paskyrą, o tai tam tikru mastu supaprastina konfigūraciją.
Vartotojo kūrimo procedūra nėra išsamiai aprašyta.
SharedUser
Tokiu atveju sukursime jį pavadinimu .
Kadangi šis vartotojas neveikia ekrano ir nekeičia nustatymų, slaptažodžio pakeisti negalima.
Jei paliksite numatytąjį, galite prisijungti naudodami šį vartotoją naudodami nuotolinį darbalaukį ir kt., todėl pašalinkite iš grupės Users
.
Bendro naudojimo aplanko kūrimas
Nesvarbu, kur jį sukursite. Taip yra todėl, kad kitiems serveriams nerūpi fizinio aplanko vieta.
Tokiu atveju sukursime aplanką, pavadintą tiesiai po SharedFolder
C disku, ir bendrinsime jį.
Atidarykite ypatybes ir sukonfigūruokite bendrinimo nustatymus.
Bendro naudojimo aplanko pavadinimas turėtų SharedFolder
būti . Šis pavadinimas bus matomas kitiems serveriams.
Pridėkite SharedUser
leidimus.
Everyone
Ištrinkite esamą .
Patvirtinkite leidimu "Keisti".
Kadangi pridėjome tik leidimus, kuriuos galima pasiekti iš išorės, nustatysime jį viduje SharedUser
, kad jis galėtų veikti šiame aplanke.
Patvirtinkite leidimu "Keisti".
Sukurkite failą, kad patikrintumėte operaciją.
Gerai, jei galite pasiekti "Explorer" iš \\<サーバー名>\
kito kompiuterio, prisijungtiSharedUser
naudodami "" ir peržiūrėti failą.
Taikomųjų programų serverio kūrimas
IIS diegimas
Šiuo metu įdiekite jį pagal numatytuosius nustatymus iš serverio tvarkyklės. Nesigilinsiu į procedūros detales.
Nereikia jokių papildomų funkcijų.
Šiuo metu nereikia jokių papildomų IIS paslaugų.
ASP.NET "Core Runtime Hosting Bundle" diegimas
Kadangi naudojame ASP.NET Core 6, turime atitinkamai įdiegti vykdymo laiką. Atsisiųskite jį iš šio URL:
Norint paleisti ASP.NET Core IIS, jums reikia kažko, vadinamo "Hosting Bundle". Atsisiųskite "Hosting Bundle" iš "ASP.NET Core Runtime".
Atsisiuntę paleiskite jį serveryje.
Vykdykite vedlį, kad jį įdiegtumėte.
Žiniatinklio taikomųjų programų kūrimas ir diegimas
Naudodami "Windows" administravimo įrankius atidarykite informacinių interneto tarnybų (IIS) tvarkytuvą.
Galite naudoti "Numatytąją svetainę" tokią, kokia ji yra, tačiau šį kartą sukursime naują svetainę. Numatytoji svetainė paleidžiama automatiškai, todėl prašome ją sustabdyti.
Sukurkite naują svetainę.
Šį kartą svetainės pavadinimas yra SharedFolderAccess
, bet nesvarbu.
Programų telkinys automatiškai sugeneruojamas naujai svetainei.
Sukurkite ir nurodykite pasirinktą aplanką, kuriame norite įdėti programą.
80 prievadas pažymėtas kaip "Numatytoji svetainė" ir pamatysite įspėjimą, tačiau galite jo nepaisyti, jei jis jau neveikia.
Jis buvo sukurtas.
"Windows Explorer" atidarykite aplanką, nurodytą žiniatinklio svetainėje, nukopijuokite ir įdėkite visas publikuotas programas tokias, kokios jos yra.
Atidarykite puslapį naudodami IIS nuorodą ir pažiūrėkite, ar rodomas ekranas. Pirmiausia galite atidaryti žiniatinklio naršyklę ir tiesiogiai įvesti URL.
Beje, net jei spustelėsite mygtuką šioje būsenoje, gausite klaidą, nes leidimo nustatymas dar nebaigtas.
Vartotojo kūrimas
Programos serveryje sukurkite tą patį vartotoją SharedUser
kaip ir bendrai naudojamo aplanko serveryje. Įsitikinkite, kad jūsų slaptažodžiai taip pat sutampa. Veiksmai yra lygiai tokie patys.
Taikomųjų programų telkinio teisių keitimas
Prieiga per žiniatinklio programas nustatoma pagal taikomųjų programų telkinį.
Pagal numatytuosius nustatymus jis turi tik ApplicationPoolIdentity
teises paleisti žiniatinklio programas.
Pakeitus šią teisę į SharedUser
, žiniatinklio programa gali veikti su jūsų nustatytomis vartotojo teisėmis.
Tai leidžia žiniatinklio programoms SharedUser
pasiekti bendrinamus aplankus .
Atidarę IIS tvarkytuvą, pasirinkite Taikomųjų programų telkiniai.
Kuriant svetainę automatiškai pridedama SharedFolderAccess
, todėl dešiniuoju pelės mygtuku spustelėkite ją ir pasirinkite "Išplėstinė".
Proceso modelyje yra "ID", todėl spustelėkite dešinėje esantį mygtuką.
Pasirinkite "Tinkinta paskyra" ir spustelėkite mygtuką "Nustatymai".
SharedUser
Įveskite ir patvirtinkite savo vartotojo vardą ir slaptažodį.
Operacijos patvirtinimas
Eikite į tinklalapį ir spustelėkite mygtuką. Jei rodomas tekstinio failo turinys, jis sėkmingas.
Įsitikinkite, kad bendrinamame aplanke taip pat turite naują failą.