PDA

View Full Version : سوال: جلوگیری از ورود کاربر به یک صفحه خاص



farnaz.saeedi
شنبه 23 مهر 1390, 12:07 عصر
با سلام
فرض کنید من یه فایل دارم به نام function.php میخوام کابر نتونه این صفحه رو باز کنه
یعنی وقتی تو قسمت آدرس مسیر این فایل رو وارد کرد پیغام خطای صفحه مورد نظر یافت نشد و نشون بده
با تشکر

MSN_Issue
شنبه 23 مهر 1390, 14:53 عصر
این کار رو هم میتونید با htaccess انجام بدید هم با خود php
برای htaccess : کلید واژه access denied رو سرچ کنید ...
برای php هم میتونید از defined استفاده کنید( اول فایل یه definedی رو که خودتون define کردید، چک کنید ، اگه false بود exit کنه ...)

MMSHFE
شنبه 23 مهر 1390, 16:47 عصر
اين كد رو به ابتداي فايل function.php خودتون اضافه كنيد:


$file = pathinfo(__FILE__, PATHINFO_BASENAME);
$script = pathinfo($_SERVER['SCRIPT_FILENAME'], PATHINFO_BASENAME);
if($file == $script) {
die('Page not found!');
}

توضيح: اين كد فايلي كه اين كد توش قرار داره رو با فايلي كه ازطريق آدرس درخواست شده مقايسه ميكنه و اگه يكسان باشه، به معني درخواست مستقيم اين فايل ازطريق آدرس در مرورگر هست و درنتيجه، پيغام ضمن نمايش پيغام عدم يافتن صفحه، از اجراي بقيه اسكريپت جلوگيري ميكنه. درنتيجه تنها راه استفاده از اين فايل، ضميمه كردن اون (include يا require) توسط اسكريپتهاي ديگه هست.
موفق باشيد.

webpower
شنبه 23 مهر 1390, 17:46 عصر
اين كد رو به ابتداي فايل function.php خودتون اضافه كنيد:


$file = pathinfo(__FILE__, PATHINFO_BASENAME);
$script = pathinfo($_SERVER['SCRIPT_FILENAME'], PATHINFO_BASENAME);
if($file == $script) {
die('Page not found!');
}

توضيح: اين كد فايلي كه اين كد توش قرار داره رو با فايلي كه ازطريق آدرس درخواست شده مقايسه ميكنه و اگه يكسان باشه، به معني درخواست مستقيم اين فايل ازطريق آدرس در مرورگر هست و درنتيجه، پيغام ضمن نمايش پيغام عدم يافتن صفحه، از اجراي بقيه اسكريپت جلوگيري ميكنه. درنتيجه تنها راه استفاده از اين فايل، ضميمه كردن اون (include يا require) توسط اسكريپتهاي ديگه هست.
موفق باشيد.

فکر کنم برای اطمینان باید دوبار نوشته بشه. چونکه ممکنه کسی که میخواد وارد بشه به جای نام سایت از آی پی سایت استفاده کنه

MMSHFE
شنبه 23 مهر 1390, 17:52 عصر
بعيد ميدونم چون اين اسكريپت از اسم فايل استفاده ميكنه و كاري به نام دامنه و... نداره. اما در كل اصول كار ثابته. ضمناً اين روش يك مزيت نسبت به تعريف ثابت و... داره و اون اينكه خود فايل چك ميكنه كه مستقيماً به نمايش در نياد و ديگه وظيفه فايلهاي ديگه نيست كه يك ثابت يا متغير و... تعريف كنن! موفق باشيد.

farnaz.saeedi
پنج شنبه 26 آبان 1390, 16:30 عصر
این کار رو هم میتونید با htaccess انجام بدید هم با خود php
برای htaccess : کلید واژه access denied رو سرچ کنید ...
این فایل .htaccess و از کجا پیدا کنم؟بعد که اون کلید واژه رو پیدا کرم چطوری تغییرش بدم که کاربر نتونه وارد بشه؟

MSN_Issue
پنج شنبه 26 آبان 1390, 20:40 عصر
این فایل .htaccess و از کجا پیدا کنم؟بعد که اون کلید واژه رو پیدا کرم چطوری تغییرش بدم که کاربر نتونه وارد بشه؟
این فایل رو خودتون باید بسازید(توی هر پوشه ای که خواستی روش اعمال بشه براش یکی بسازید ...)
این لینک ها میتونه کمکتون کنه :
http://www.google.com/search?q=%D8%A2%D9%85%D9%88%D8%B2%D8%B4+htaccess&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a

http://www.asandownload.com/article/archives/learn/internet/download_10_point_htaccess_training/

http://www.afghannew.co/thread697.html

farnaz.saeedi
جمعه 27 آبان 1390, 13:07 عصر
این فایل رو خودتون باید بسازید(توی هر پوشه ای که خواستی روش اعمال بشه براش یکی بسازید ...)
این لینک ها میتونه کمکتون کنه :
http://www.google.com/search?q=%D8%A2%D9%85%D9%88%D8%B2%D8%B4+htaccess&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a

http://www.asandownload.com/article/archives/learn/internet/download_10_point_htaccess_training/

http://www.afghannew.co/thread697.html
ممنون از راهنماییتون
من یه فایل .htaccess ساختم.یه جا خوندم واسه اینکه کسی نتونه او پوشه رو باز کنه باید این عبارت و تو فایل بنویسیم
option -index
این فایل و گذاشتم تو پوشه css ولی الان فایل های css و اجرا نمیکنه
آدرس فایل های css و به اینصورت تغییر دادم اما بازم درست نشد
<link rel="stylesheet" type="text/css" href="http://localhost/uni/css/template.css" />
مشکلش چیه؟

MSN_Issue
جمعه 27 آبان 1390, 15:27 عصر
ممنون از راهنماییتون
من یه فایل .htaccess ساختم.یه جا خوندم واسه اینکه کسی نتونه او پوشه رو باز کنه باید این عبارت و تو فایل بنویسیم
option -index
این فایل و گذاشتم تو پوشه css ولی الان فایل های css و اجرا نمیکنه
آدرس فایل های css و به اینصورت تغییر دادم اما بازم درست نشد
<link rel="stylesheet" type="text/css" href="http://localhost/uni/css/template.css" />
مشکلش چیه؟
نمی دونم دقیقا چی کار کردید!!!
من Options -Indexes رو گذاشتم تو htaccess درست کارکرد ...!
یعنی استایل درست اجرا میشد، اما پوشه ایندکس نمیشد ...

شاید مشکل از اون es باشه ...:چشمک: