ASP.NET کور ایپلی کیشنز (IIS, ایپلی کیشن پول کی ترتیبات) سے دوسرے سرورز پر مشترکہ فولڈرز تک رسائی حاصل کرنا

جب صفحے کی تازہ کاری :
صفحہ تخلیق تاریخ :

آپریشن تصدیق کا ماحول

Visual Studio
  • Visual Studio 2022
ASP.NET کور
  • 6 (رازپر صفحات)
Windows Server
  • 2022 (بنیادی نظام کی ضروریات ASP.NET)
  • 2019 (مشترکہ فولڈر تعیناتی سرور)
IIS
  • 10.0

آپریٹنگ ماحول

میں نے اسے ہر چیز میں آزمایا نہیں ہے، لیکن یہ زیادہ تر حصے کے لئے کام کرنا چاہئے.

Visual Studio
  • کوئی بھی چیز جو ایک ASP.NET یا ASP.NET کور پروجیکٹ تیار کر سکتی ہے
ASP.NET کور
  • کسی بھی ورژن (ایم وی سی، ریزر صفحات، اے پی آئی)
ASP.NET
  • کوئی بھی ورژن قابل قبول ہے
Windows Server
  • ونڈوز سرور 2008 یا اس کے بعد
IIS
  • 7.0 یا اس کے بعد

پیشگی شرائط

  • ASP.NET کور ایپلی کیشنز کا مقصد آئی آئی ایس پر چلنا ہے۔ دوسرے ویب سرورز ان تجاویز کے مندرجات کو نافذ کرنے کے قابل نہیں ہوں گے

ماحول

اس کی تصدیق مندرجہ ذیل ماحول میں کی جاتی ہے۔

پی سی اور سرورز کے استعمال کا مقصد
ونڈوز 11 (مقامی) پروگراموں کی ترقی کے لئے ایک ماحول. اس مضمون کے مقصد کے لئے غیر متعلقہ
SV2022Test ایک ایسا ماحول جو آئی آئی ایس اور ASP.NET کور چلاتا ہے۔ یہاں سے SV2019 ٹیسٹ مشترکہ فولڈر تک رسائی حاصل کریں
SV2019Test مشترکہ فولڈرز والے سرورز

اس کے علاوہ، مختلف ترتیبات مندرجہ ذیل ہیں.

پیرامیٹر نام کی قدر
صارف نام تک رسائی حاصل کریں SharedUser
مشترکہ فولڈر کا نام SharedFolder

ASP.NET کور ایپلی کیشن سے مشترکہ فولڈر سے فائلوں کو پڑھنے اور لکھنے کے لئے ایک پروگرام بنائیں

مسٹر / مس پل کے طور پر ، صرف بٹن پر کلک کریں ،

  • فائلوں کو مشترکہ فولڈر میں لوڈ کریں اور انہیں اسکرین پر ڈسپلے کریں۔
  • مشترکہ فولڈر میں ایک نئی فائل لکھیں

عمل.

میں نے ابھی تک ایک مشترکہ فولڈر نہیں بنایا ہے ، لہذا میں اسے ڈی بگ نہیں کرسکتا ، لیکن یہ سادہ کوڈ ہے ، لہذا میں اس وقت کے لئے صرف ایک پروگرام بناؤں گا۔

ASP.NET کور پروجیکٹ کسی بھی قسم کا ہوسکتا ہے ، لیکن اس معاملے میں ، میں ریزر پیجز استعمال کررہا ہوں۔

Index.cshtml.cs اور جب بٹن پر کلک کیا جاتا ہے تو کیا ہوتا ہے اسے شامل کریں۔ سرور کا نام براہ راست لکھا جاتا ہے ، لیکن براہ کرم اسے اصل آپریشن میں اچھی طرح سے ایڈجسٹ کریں۔ کچھ معاملات میں ، مشترکہ فولڈر قابل رسائی نہیں ہوسکتا ہے ، لہذا اسے آزمائے جانے میں منسلک کیا جاتا ہے۔

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 ایک بٹن اور ایک پیغام ہے.

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

ایک بار جب آپ پروگرام بنا لیتے ہیں تو ، سرور پر تعینات کرنے کے لئے ایک فائل بنائیں۔ اس صورت میں ، ہم شائع شدہ فائل کو براہ راست رکھنے کا طریقہ استعمال کریں گے ، لیکن اس سے کوئی فرق نہیں پڑتا ہے کہ آپ کون سا طریقہ استعمال کرتے ہیں۔ اس کے علاوہ ، پروگرام کا انتظام اس ٹپ کا جوہر نہیں ہے ، لہذا اسے آسان انداز میں درج کیا گیا ہے۔

پبلشنگ ترتیب شامل کریں۔

ترتیبات کو تبدیل کریں۔

ترتیبات کو تبدیل کردیا گیا ہے جیسا کہ اعداد و شمار میں دکھایا گیا ہے۔ یہ بھی خاص طور پر اس وقت کے مقصد سے متعلق نہیں ہے، لہذا براہ مہربانی اسے اپنے ماحول کے مطابق سیٹ کریں.

پروگرام شائع کریں.

پروگرام کی اشاعت کے بعد ، "ہدف مقام" لنک پر کلک کریں اور وہ فولڈر کھل جائے گا جس میں آپ جو فائلیں رکھنا چاہتے ہیں وہ کھل جائے گا۔

مشترکہ فولڈر سرور کی تعمیر

ایک صارف بنائیں

عام طور پر ، اگر سرور مختلف ہے تو ، ہر سرور پر بنائے گئے صارف کو اندرونی طور پر مکمل طور پر مختلف صارف کے طور پر سمجھا جاتا ہے۔ اسی صارف نام اور پاس ورڈ کے ساتھ فائل بنا کر ، آپ ونڈوز کی توثیق کو کسی دوسرے سرور پر چھوڑ سکتے ہیں۔ اس بار ہم کسی دوسرے سرور پر مشترکہ فولڈر تک رسائی حاصل کرنے کے لئے اس کا استعمال کریں گے۔

ویسے ، اگر آپ فعال ڈائریکٹری جیسے ڈومین میں سرورز اور اکاؤنٹس کے ساتھ کام کر رہے ہیں تو ، آپ اس اکاؤنٹ کے ساتھ دونوں سرورز مرتب کرسکتے ہیں ، جو ترتیب کو کچھ حد تک آسان بناتا ہے۔

صارف بنانے کا طریقہ کار تفصیل سے بیان نہیں کیا گیا ہے۔

SharedUser اس صورت میں، ہم اسے نام کے ساتھ بنائیں گے. چونکہ یہ صارف اسکرین کو نہیں چلاتا یا ترتیبات کو تبدیل نہیں کرتا ہے ، لہذا پاس ورڈ کو تبدیل نہیں کیا جاسکتا ہے۔

اگر آپ ڈیفالٹ چھوڑ دیتے ہیں تو ، آپ ریموٹ ڈیسک ٹاپ وغیرہ کے ساتھ اس صارف کے ساتھ لاگ ان کرسکتے ہیں ، لہذا براہ کرم گروپ Users سے ہٹا دیں۔

ایک مشترکہ فولڈر بنانا

اس سے کوئی فرق نہیں پڑتا کہ آپ اسے کہاں بناتے ہیں. اس کی وجہ یہ ہے کہ دوسرے سرورز جسمانی فولڈر کے مقام کی پرواہ نہیں کرتے ہیں۔ اس صورت میں ، ہم سی ڈرائیو کے تحت SharedFolder براہ راست نام کا ایک فولڈر بنائیں گے اور اس کا اشتراک کریں گے۔

خصوصیات کو کھولیں اور شیئرنگ کی ترتیبات تشکیل دیں۔

مشترکہ فولڈر کا نام ہونا چاہئے SharedFolder ۔ یہ نام دوسرے سرورز کو نظر آئے گا۔ اجازتیں شامل کریں SharedUser ۔

Everyone موجودہ کو حذف کریں۔

"تبدیل کریں" اجازت کے ساتھ تصدیق کریں۔

چونکہ ہم نے صرف ایسی اجازتیں شامل کی ہیں جن تک باہر سے رسائی حاصل کی جاسکتی ہے ، لہذا ہم اسے اندرونی طور پر SharedUser ترتیب دیں گے تاکہ اس فولڈر میں کام کرسکیں۔

"تبدیل کریں" اجازت کے ساتھ تصدیق کریں۔

آپریشن کو چیک کرنے کے لئے ایک فائل بنائیں۔

اگر آپ کسی دوسرے پی سی سے \\<サーバー名>\ ایکسپلورر میں رسائی حاصل کرسکتے ہیں ، لاگ ان کرسکتے ہیںSharedUser ، اور فائل دیکھ سکتے ہیں تو یہ ٹھیک ہے۔

ایپلی کیشن سرور کی تعمیر

IIS انسٹال کریں

فی الحال ، اسے سرور مینیجر سے ڈیفالٹ طور پر انسٹال کریں۔ میں طریقہ کار کی تفصیل میں نہیں جاؤں گا۔

کوئی اضافی خصوصیات کی ضرورت نہیں ہے.

اس وقت کسی اضافی آئی آئی ایس خدمات کی ضرورت نہیں ہے۔

ASP.NET کور رن ٹائم ہوسٹنگ بنڈل انسٹالیشن

چونکہ ہم ASP.NET کور 6 استعمال کر رہے ہیں ، لہذا ہمیں اس کے مطابق رن ٹائم انسٹال کرنے کی ضرورت ہے۔ اسے درج ذیل URL سے ڈاؤن لوڈ کریں:

آئی آئی ایس میں ASP.NET کور چلانے کے لئے ، آپ کو "ہوسٹنگ بنڈل" نامی کسی چیز کی ضرورت ہے۔ ASP.NET کور رن ٹائم سے "ہوسٹنگ بنڈل" ڈاؤن لوڈ کریں۔

ایک بار ڈاؤن لوڈ ہونے کے بعد ، اسے سرور پر چلائیں۔

اسے انسٹال کرنے کے لئے وزارڈ کی پیروی کریں۔

ویب ایپلی کیشنز بنانا اور تعینات کرنا

ونڈوز ایڈمنسٹریٹو ٹولز سے ، انٹرنیٹ انفارمیشن سروسز (آئی آئی ایس) مینیجر کھولیں۔

آپ "ڈیفالٹ ویب سائٹ" استعمال کرسکتے ہیں جیسا کہ یہ ہے، لیکن اس بار ہم ایک نئی سائٹ بنائیں گے. طے شدہ ویب سائٹ خود بخود شروع ہوجاتی ہے ، لہذا براہ کرم اسے روکیں۔

ایک نئی ویب سائٹ بنائیں.

اس بار ، سائٹ کا نام ہے SharedFolderAccess ، لیکن اس سے کوئی فرق نہیں پڑتا ہے۔

ایپلی کیشن پول نئی سائٹ کے لئے خود کار طریقے سے تیار کیا گیا ہے۔

اپنی پسند کا ایک فولڈر بنائیں اور اس کی وضاحت کریں جہاں آپ پروگرام رکھنا چاہتے ہیں۔

پورٹ 80 پر "ڈیفالٹ ویب سائٹ" کا لیبل لگایا گیا ہے اور آپ کو ایک انتباہ نظر آئے گا ، لیکن اگر یہ پہلے سے ہی ڈاؤن ہے تو آپ اسے نظر انداز کرسکتے ہیں۔

یہ تخلیق کیا گیا ہے.

ونڈوز ایکسپلورر میں ویب سائٹ میں بیان کردہ فولڈر کھولیں ، اور تمام شائع شدہ پروگراموں کو کاپی کریں اور اسی طرح رکھیں جیسے وہ ہیں۔

آئی آئی ایس لنک سے صفحہ کھولیں اور دیکھیں کہ آیا اسکرین ظاہر ہوتی ہے یا نہیں۔ آپ پہلے ویب براؤزر کھول سکتے ہیں اور براہ راست یو آر ایل داخل کرسکتے ہیں۔

ویسے ، اگر آپ اس حالت میں بٹن پر کلک کرتے ہیں تو ، آپ کو غلطی مل جائے گی کیونکہ اجازت کی ترتیب ابھی تک مکمل نہیں ہوئی ہے۔

ایک صارف بنائیں

مشترکہ فولڈر سرور کی طرح ایپلی کیشن سرور پر وہی صارف SharedUser بنائیں۔ یقینی بنائیں کہ آپ کے پاس ورڈ بھی میل کھاتے ہیں۔ اقدامات بالکل ایک جیسے ہیں.

ایپلی کیشن پول کی اجازتوں کو تبدیل کرنا

ویب پروگراموں تک رسائی کا تعین ایپلی کیشن پول کے ذریعہ کیا جاتا ہے۔ پہلے سے طے شدہ طور پر ، اس میں صرف ApplicationPoolIdentity ویب ایپلی کیشنز چلانے کے لئے استحقاق ہیں۔

اس استحقاق کو تبدیل کرکے SharedUser ، ویب پروگرام آپ کے مقرر کردہ صارف کی مراعات کے ساتھ کام کرسکتا ہے۔ اس سے ویب پروگراموں SharedUser کو مشترکہ فولڈرز تک رسائی حاصل کرنے کی اجازت ملتی ہے۔

جب آپ IIS مینیجر کھولتے ہیں تو ، ایپلی کیشن پول منتخب کریں۔

جب آپ ویب سائٹ بناتے ہیں تو خود بخود ایک شامل SharedFolderAccess ہوتا ہے ، لہذا اس پر دائیں کلک کریں اور "ایڈوانسڈ" منتخب کریں۔

پروسیس ماڈل میں ایک "ID" ہے ، لہذا دائیں طرف بٹن پر کلک کریں۔

"اپنی مرضی کے مطابق اکاؤنٹ" منتخب کریں اور "ترتیبات" بٹن پر کلک کریں۔

SharedUser اپنا صارف نام اور پاس ورڈ درج کریں اور تصدیق کریں۔

آپریشن کی تصدیق

ویب صفحے پر جائیں اور بٹن پر کلک کریں۔ اگر ٹیکسٹ فائل کے مندرجات دکھائے جاتے ہیں تو ، یہ کامیاب ہے۔

اس بات کو یقینی بنائیں کہ آپ کے پاس مشترکہ فولڈر میں ایک نئی فائل بھی ہے۔