PDA

View Full Version : قطع دسترسی به فولدر در سایت ؟



mosi2007
چهارشنبه 30 فروردین 1391, 12:00 عصر
سلام

یه پوشه داریم به نام uploads
و همه تصاویری که کاربران اپلود میکنن میره تو اون پوشه

ادرس پوشه uploads

www.test.com/uploads/
صفحه اصلی سایت به نام index.php با ادرس

www.test.com/index.php

همه تصاویر رو از داخل فولدر uploads میخونه تا اینجا که به هیچ مشکلی نخوردم
دوستان دقت داشته باشن که صفحه اصلی index.php درادرس روت سایت میباشد قبل از پوشه uploads

مشکل من اینه که برای اینکه کاربران نیاد ادرسو به صورت دستی تو مرورگر وارد کنه اومدم یه فایل htaccess
ساختم که توش اینو ریختم

deny from all
الان دیگه هیچ کاربری نمیتونه بصورت تایپ در مرورگر وارد این پوشه بشه ولی مشکل من اینه که بعد از گذاشتن این htaccess تو پوشه uploads دیگه صفحه اصلی عکسها رو هم نمیتونه نشون بده

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

wallfa
چهارشنبه 30 فروردین 1391, 12:16 عصر
اچ تی اکسز با این جایگزین کن و آدرس ای پی سایت بده ببین قبول میکنه



order allow deny
deny from all
allow from <your_IP>

mosi2007
چهارشنبه 30 فروردین 1391, 12:43 عصر
اچ تی اکسز با این جایگزین کن و آدرس ای پی سایت بده ببین قبول میکنه



order allow deny
deny from all
allow from <your_IP>


نشد
در ضمن من فعلا دارم تو لوکال تست میکنم
به جای ادرس ip هم 127.0.01 رو دادم نشد localhost رو هم دادم نشد
دوستان بی زحمت اون فایل ضمیمه رو دانلود کنن و تو لوکال خودشون تست کنن
ممنون میشم زود جواب بدین

MMSHFE
چهارشنبه 30 فروردین 1391, 13:03 عصر
کد درسته فقط یکم باید تغییرش بدین:


order deny, allow
deny from all
allow from <your_IP>

به جابجاشدن deny و allow در خط اول دقت کنید. ضمناً این کد روی لوکال کار نمیکنه چون IP در دسترسی مستقیم هم همون 127.0.0.1 هست. بجای این کار، یک فایل index.php توی پوشه images با محتوای زیر بسازین:


header('location: ../index.php');
echo '<meta http-equiv="refresh" content="0; url=http://www.yoursite.com"/>'.PHP_EOL;
exit();

و بجای www.yoursite.com آدرس سایتتون رو بنویسید.
موفق باشید.