PDA

View Full Version : حذف نام فايل از آدرس بار



bps20590
سه شنبه 31 شهریور 1388, 22:40 عصر
با سلام
چطور ميشه وقتي روي يك لينك كليك مي كنيم تا صفحه مربوط به آن باز شود از نمايش نام فايل در آخر آدرس جلوگيري كرد يعني
http://www.footballcoachonline.com/game/j.php
بصورت
http://www.footballcoachonline.com/game/
نمايش داده شود

alihoseini
سه شنبه 31 شهریور 1388, 23:07 عصر
سلام
معمولاً وقتي نام فايل رو نميزني يكي از صفحات پيشفرض كه در web server تعريف شده اجرا ميشه
مثل index.php يا index.html ...

k2-4u.com
چهارشنبه 01 مهر 1388, 00:16 صبح
خب بهترین راه استفاده از ماژول mod_rewrite در آپاچی هست که
کد هاش رو در فایل های htaccess می نویسند
شما جستجو کنید "کار با mod_rewrite" حتما به نتیجه میرسین

alihoseini
چهارشنبه 01 مهر 1388, 01:18 صبح
این هم هست , ولی اصلش استفاده از htaccess هستش !

ميشه بگي چطور تو htaccess اين كارو ميكني ؟

payamsp
چهارشنبه 01 مهر 1388, 09:18 صبح
توي شاخه اصلي وب سايتتون يك فايل با پسوند .htaccess وجود داره كه بايد توي اون تنظيمات مربوط به اي كار رو انجام بديد

مثال :


RewriteEngine on
RewriteRule ^post/([^/\.]+)/?$ index.php?post_id=$1 [L]

bps20590
پنج شنبه 02 مهر 1388, 12:33 عصر
اين كدي را كه قيد كرديد درفايل مورد نظر بنويسم ودر شاخه اصلي سايت بزارم چه كاري انجام مي دهد

bps20590
پنج شنبه 02 مهر 1388, 13:01 عصر
من شاخه اصلي سايت را نگاه كردم همچين فايلي را نديدم آياا بايد خودم ايجاد كنم ودقيقا براي اينكه اجرا بشه در كجا كپي كنم

payamsp
پنج شنبه 02 مهر 1388, 13:54 عصر
اين كد باعث ميشه تا دسترسي به آدرسي مثله http://site.com/index.php?post_id=44 با آدرس http://site.com/post/44 هم امكان پذير باشه .
اگه چنين فايلي وجود نداره اون رو توي شاخه اصلي وب سايتتون ايجاد كنيد توجه داشته باشيد كه اين فايل بدون نام هست و فقط داراي پسوند .htaccess هست .
در ضمن اون كدي كه من گذاشتم يك مثال از كاري بود كه شما مي خوايد انجام بديد . شما بايد با توجه به فايل هاتون و متغيرهاي برنامه تون كدهايي شبيه به كد بالا رو داشته باشيد.

bps20590
پنج شنبه 02 مهر 1388, 15:28 عصر
ضمن تشكر آيا قبل از اين كار نبايد پيكربندي تنظيم شود وضمناً يعني من بايد براي صفحات مختلفم كدهاي مختلف بنويسم ونمي شود فقط با يك كد اينكار انجام بشه چون بعضي از صفحات من نياز به دريافت پارامتر نيستند مثل راهنما وبعضي نيز ارسال پارامتر بوسيله آژاكس صورت گرفته لطفا اگه راهي هست راهنمايي كنيد

bps20590
پنج شنبه 02 مهر 1388, 15:55 عصر
دوست عزيز بعنوان مثال من داخل سايتم چهارشاخه دارم كه داخل آنها فايلها قرار دارند حال بعنوان مثال ميخواهم هرگاه روي يك لينك كليك كردم كه از فايلهاي داخل شاخه user فايل را فراخواني مي كند با يد چه كدي را بنويسم
فرضاً مي خواهم فايل
www.domin.com/user/help.php اجرا شود در حالي كه url آدرس www.domain.com/user/ را نمايش دهد

payamsp
پنج شنبه 02 مهر 1388, 21:15 عصر
براي اينكه از چنين قابليتي استفاده كنيد بايد ما‍ژول mod_rewrite در آپاچي فعال باشه كه روي سرور معمولا فعال هست.
شما مي تونيد با استفاده از كدي مثل زير تمام درخواست ها رو به يك صفحه بفرستيد


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /webnevis/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /webnevis/index.php [L]
</IfModule>

براي اون مثالي هم كه زديد مي تونيد از كد زير استفاده كنيد


<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^user/?$ user/help.php [L]
</IfModule>

bps20590
جمعه 03 مهر 1388, 10:27 صبح
دوست عزيز من كد دوم را درسايت گذاشتم ولي هيچ تغييري در url بوجود نيامد