PDA

View Full Version : ایجاد کنترل پنل برای سایت



general67
جمعه 01 دی 1396, 14:51 عصر
سلام.
یک سایتی درست کرده ایم.میخواستم براش یه کنترل پنل اختصاصی بنویسم.منتها نمیدونم چطوری عمل کنم.آیا یه پروژه جداگانه بنویسم ؟
به مثال مدیر سایت میخواد مطالب و عکس ها و داده ها رو ویرایش کنه .اگه کنترل پنل رو در پروژه فعلی تعریف کنم برای ورود به کنترل پنل میره به صفحه لاگین کاربران سایت که این زیاد دلپسند نیست.
به هر حال در این مورد راهنمایی فرمایید و راهکار طراحی و راهندازی یه کنترل پنل اختصاصی در asp.net چیه.
مرسی.

Tekyegah
شنبه 02 دی 1396, 06:39 صبح
سلام
شما بابد توی همون پروژه یه بخش جداگانه برای مدیریت سایتتون بنویسید .
مثلا برای ویرایش مطالب ، یه لیست داشته باشید ، اعنوان و تاریخ مطلب رو نشون بده ، و برای هر مطلبی یه آیکن ویرایش و حذف داشته باشه .

این فیلم رو ببینید بخش مدیریتی هست که من برای یکی از سایت هام نوشتم
http://upload-free.ir/MediaUploader/hamed/ASP/mycod.mp4

general67
شنبه 02 دی 1396, 10:42 صبح
مرسی از ویدیویی که قرار دادین.اما من کنترل پنل رو درست کردم.
مشکل من اینه که اگر تو ریشه سایت بزارم موقع لاگین انتقال پیدا پیدا میکنه به صفجه لاگینی که کاربران سایت از انجا وارد سایت میشن.واین جالب نیست.هم کاربران عادی و هم مدیران از یک قسمت وارد بشن.
نمیشه هم برای ورود دو تا صفحه لاگین درست کردن.چون خودکار گفتیم موقعی که کاربر میخواد وارد سایت بشه انتقال به صفحه لاگین پیشفرض.

یه راهش اینه که دوتا پروژه تعریف کنم تو یک سولیشن.یکی برای سایت اصلی و یکی برای مدیریت سایت.که اینطوری از هم تفکیک میشن.اما هر کاری میکنم به پروژه دوم دسترسی ندارم.

مثال:پروژه 1: localhost/Project1 نمایش میده.اما localhost/project1/project2 نمایش نمیده.میگه پیدا نکردم.تو اینترنت هم یک سری تنظیمات بود انجام دادم باز هم به پروژه 2 دسترسی ندارم.

Tekyegah
شنبه 02 دی 1396, 17:31 عصر
زیاد متوجه نشدم ... شاید سناریو سایتتون رو بد پیاده سازی کردین .

ببینید فرض رو بر این میذاریم که شما یه سایت فروشگاهی دارید .

این سایت باید 3 بخش داشته باشه

بخش اول که همه میتونن ببین که میشه به فرض : localhost

بخش دوم میشه کنترل پنل کاربرهای عضو که به فرض میشه : localhost/Cpanel

بخش سوم میشه بخش مدیریت سایت که هم بر ارسال های سایت مثل مطالب ، خبر ، اجناس و... مدیریت میکنه هم بر کاربران و سفارشات و ... که مثلا آدرسش باید این باشه : localhost/Admin

اینطور که شما میگید توی web.config تعریف کردید که کاربر بخواد وارد کنترل پنلش شه بره مثلا به این آدرس localhost/UserLogin !

خب چرا از این روش دست و پا گیر استفاده میکنی ... روش های مناسب تری هم هست !

در واقع شما باید 3 بخش جداگونه توی 1 پروژه کد نویسی کنید .

( ببخشید واقعا چون نمیدونم چه کدی زدی گیج شدم ... امیدوارم جواب اشتباهی نداده باشم )

general67
شنبه 02 دی 1396, 19:40 عصر
دراین روش که شما میگید.کد کانفیک برای ورود کاربران و مدیریت چی هستش؟
چون تو وب کانفیک فقط میشه به یک صفحه مسیر داد .مثلا بهش میگیم هر کسی وارد نشده و قصد دسترسی به صفحه را داشته باشه بره به صفحه لاگین.

من هم مثل روشی که فرمودید عمل کردم.و برای اینکه جدا سازی بین صفحه ورود کاربران و مدیریت بشه. مجبورم یه کار هایی کنم
وقتی که صفحه لاگین میرسه چک میکنه کاربر میخواد به کدام صفحه دسترسی داشته باشه به صفحه لاگین مورد نظر هدایت میکنه.

منتها عالی میشد که پروژه ها جدا میشدند و سایت از مدیریت جدا میشد.البته یه کارایی کردم ولی یه جاهایی به مشکل برخوردم.
میتونم دوتا پروژه رو در IIS زیر شاخه هم داشته باشم.و کار هم میکنه به این صورت که آدرس localhost/project1 پروژه اول یا پدر.آدرس localhost/project1/project2 پروژه فرزند.ولی وقتی پروژه 2 رو دسترسی محدود میکنم.ایراد پرمیشن میگیره.access denid.
اگر این رو درست کنم خوب میشه.اگر هم نشد که هیچی همونی که قبلا انجام دادم رو میزارم.

Tekyegah
یک شنبه 03 دی 1396, 08:57 صبح
شما باید هر سه قسمت رو توی یه پروژه کدنویسی کنید . نه اینکه یه پروژه بنویسید و توی این مسیر از پروژه قبلی کپی کنید . شما وقتی صفحه ای میسازید توی خط اول صفحه aspx قسمت inherits مسیر فایل رو مشخص میکنید . همچنین توی صفحه فایل cs تون هم این مسیر باید یکسان باشه .

bomb23
یک شنبه 03 دی 1396, 10:37 صبح
سلام از پروژه دومتون جداگانه پابلیش بگیرید و توی هاست با استفاده از Virtual directory یه دایرکتوری مجازی مثلا به اسم admin ایجاد کنید و بعد یه پروژه کامل رو روی این روت میتونید داشته باشید برای بخش مدیریت سایتتون.
مثلا xxx.com/admin خود xxx.com هم که میشه پروژه اصلی نمای سایتتون.

general67
یک شنبه 03 دی 1396, 10:38 صبح
کپی نکردیم و با این قسمت ها مشکلی ندارم.نمیدونم با IIS کار کردین یا نه.IIS EXPRESS رو نمیگم.تو IIS میتونین چند تا پروژه کنار هم یا درون هم داشته باشین.
صفحه ها همشون کار میکنن و مشکلی نداریم.و قبلا هم گفتم وقتی دسترسی رو محدود میکنم به جای اینکه بره به صفحه لاگین .میگه Access Denid.
به هر حال همشون رو تو یه پروژه جمع کردم.

پس فلسفه مایکروسافت از راهندازی این Project ها چی بوده بجز جدا سازی.

general67
یک شنبه 03 دی 1396, 10:40 صبح
سلام از پروژه دومتون جداگانه پابلیش بگیرید و توی هاست با استفاده از Virtual directory یه دایرکتوری مجازی مثلا به اسم admin ایجاد کنید و بعد یه پروژه کامل رو روی این روت میتونید داشته باشید برای بخش مدیریت سایتتون.
مثلا xxx.com/admin خود xxx.com هم که میشه پروژه اصلی نمای سایتتون.

مرسی.
همین کار رو کردیم.اما با محدود کردن دسترسی اجازه نمیده.کلا میگه Access denid