زمانیکه صحبت از توزیع برنامههای Blazor بر روی IIS است، عموما تنظیمات مرتبط با برنامههای Blazor Server و یا Hosted Blazor Apps که همان ترکیب WASM+Web API هستند، مطرح است؛ در غیراینصورت اگر برنامهای صرفا از فایلهای Blazor WASM تشکیل شده باشد، توزیع آن حتی بر روی صفحات static مربوط به GitHub هم میسر است و وابستگی خاصی به سروری ندارند. بنابراین در اینجا بیشتر هدف تنظیمات IIS مرتبط با قسمت ASP.NET Core این برنامهها است و این مورد را پیشتر ...
آخرین نگارش Rider، پشتیبانی از اجرای برنامههای ASP.NET Core را توسط IIS Express هم اضافه کردهاست. در این حالت اگر به صورت پیشفرض و بدون تنظیم خاصی، سعی در اجرای برنامهی وب خود توسط IIS Express کنید، با خطای زیر مواجه خواهید شد: HTTP Error 500.21 - Internal Server Error
Handler "aspNetCore" has a bad module "AspNetCoreModule" in its module list
در ادامه قصد داریم روش رفع این مشکل را بررسی کنیم. پیشنیازهای کار با IIS ...
یکی از نکات امنیتی که استاندارد Owasp بررسی مینماید هدر X-Content-Type-Options است که جهت جلوگیری از حملات از طریق فایلهای نامرتبط میباشد. در این رخنه ممکن است فایلی که مرورگر دریافت میکند با آنچه که وب
سایت ما آن را میشناسد متفاوت باشد. به عنوان مثال یک فایل اسکریپت که به عنوان یک
فایل استایل معرفی میگردد ولی قابلیت
اجرای کدهای آن در مرورگر امکان پذیر است؛ به این نوع حملات MIME Sniffing میگوین ...
پس از انجام « تنظیمات امنیتی SMTP Server متعلق به IIS جهت قرارگیری بر روی اینترنت » و همچنین پیاده سازی « مراحل تنظیم Let's Encrypt در IIS »، یکی دیگر از کاربردهای مجوز SSL دریافتی، رمزنگاری تبادل اطلاعات بین SMTP Server جاری و میل سرور مقصد است. بدون انجام اینکار، ایمیلهای دریافتی توسط GMail، یک چنین شکلی را خواهند داشت:
همانطور که مشاهده میکنید، کنار ایمیل ارسالی توسط ما، یک آیکن قرمز رنگ مبتنی بر عدم رمزنگاری ارتبا ...
در مقاله چک لیست امنیتی web.config متوجه شدیم که تنظیم یک سری مقادیر، باعث افزایش ضریب ایمنی وب سایت میشود. در این نوشتار قصد داریم به بررسی این چک لیست امنیتی بپردازیم. اولین مورد لیست در رابطه با وضعیت session هاست؛ هر چند که توصیه میشود تا جای ممکن استفاده از sessionها کنار گذاشته شود یا اینکه محدود شود . SessionState تگ sessionstate حاوی خصوصیتی به نام cookieless میباشد که در نسخهی یک دات نت به صورت دو ارزشی پ ...
روزگاری دریافت مجوزهای SSL، گران و سخت بود. برای رفع این مشکلات مؤسسههایی مانند Let's Encrypt پدیدار شدهاند که مجوزهای SSL رایگانی را برای سایتهای اینترنتی صادر میکنند. دسترسی به سرویس آنها از طریق API ارائه شدهی آن، بسیار ساده بوده، کار با آن رایگان است و نیاز به مجوز خاصی ندارد. فقط باید دقت داشت که گواهینامههای Let's Encrypt دو ماهه هستند و وبسرور سایت شما باید اجازهی دسترسی به محل ویژهای را که جهت تعیین اعتبار دومین درخواس ...
شاید برای شما هم پیش آمده باشد که با Webhookها کار کنید و یا در حین اجرای پروژهی وب خودتان بخواهید خروجی آن را به اطرافیان خود نشان دهید. یکی از راهها این است که پروژه را بر روی یک مخزن Git ارسال کنید و سپس دوستان خودتان را اضافه کنید تا بتوانند پروژه را دریافت و اجرا کنند. البته در این حالت شاید نخواهید کسی سورس شما را ببیند! روش دیگر این است که هاست و دامین بخرید و پروژه را بر روی آن آپلود کنید و در مرحلهی آخر، آدرس وبسایت را برای اط ...
نحوهی نصب و راه اندازی برنامههای ASP.NET Core را در IIS، پیشتر در مطلب « ارتقاء به ASP.NET Core 1.0 - قسمت 22 - توزیع برنامه توسط IIS » بررسی کردیم. در این مطلب میخواهیم به تعدادی از خطاهای ممکن در حین راه اندازی اولیهی این نوع برنامهها بپردازیم.
خطای 500.19
این خطا زمانی رخ میدهد که ماژول هاستینگ ASP.NET Core، توسط IIS شناسایی نشده باشد. نصب مجدد آن این مشکل را برطرف میکند.
...
اگر شما در حال راه اندازی برنامهای هستید که از یک زیر دامنه یا نام دامنه برای شناسایی یک کاربر یا زیرمجموعه دینامیک استفاده میکند، ممکن است در تلاش برای آزمایش قابلیتهای زیر دامنه به صورت محلی مشکلی داشته باشید. در این مقاله قصد داریم یک وب سایت با استفاده از domain و subdomains را به صورت محلی بر روی IIS Express اجرا کنیم.
اولا، اجازه بدهید نگاهی به تنظیم یک دامنه محلی داشته باشیم. زمانیکه شما برنامه محلی را اجرا میکنید II ...
قطعه کد زیر را در نظر بگیرید : [HttpPost,AjaxOnly, ValidateAntiForgeryToken]
public virtual JsonResult Create(AddDeviceGroupViewModel deviceGroupViewModel)
{
if (ModelState.IsNotValid())
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return Json(new { success = false, message = ModelState.FirstErrorMessage(), notificationType = ...