ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : سوال درمورد ریدارکت 301 و 302



saeid1346
April 21st, 2016, 01:09
سلام دوستان خسته نباشید

اگر سوال تکراریه به بزرگواری خودتون ببخشید جای رو پیدا نکردم برای پاسخ به این سوالات.

یک سوال ، یک سری علامت و علائمی در ریدارکت استفاده میشه مثلا




RewriteCond %{HTTP_HOST} ^siteghadim.ir [NC]
RewriteRule ^(.*)$ http://sitejadid.ir/$1 [L,R=301]




این یک نمونه کد برای ریدارکت نوع 301 تست کردم مشکلی نداشت

میخواستم بدونم این علائم قبل سایت مثلا در خط اول ^ و [NC] معنیش چیه ؟

و یک سوال دیگه


در گوگل فچ با ریدارکت 301 تست کردم گوگل جواب داد :



Downloaded HTTP response:
HTTP/1.1 301 Moved Permanently
Date: Wed, 20 Apr 2016 19:51:30 GMT
Server: Apache/2
Location: http://site.ir/
Content-Length: 223
Keep-Alive: timeout=2, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=iso-8859-1
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://site.ir/">here</a>.</p>
</body></html>



در ریدارکت 302 به جای خط 6 ام این خط رو نشون داد

Content-Length: 199

علت تفاوت این عدد چیه ؟

iHSG
April 21st, 2016, 12:03
سلام
NC مخفف nocase است که یه کاری میکنه که وب سرور به بزرگی و کوچکی آدرس دامنه ای که وارد کردید توجه ای نداشته باشه.
L مخفف last هست که به وب سرور میگه این آخرین شرطی هست که در این Rewrite قرار میدیم.
R نوع ریدایرکت است که جلوش نوشته 301

سایر تگ ها هم می تونید در این لینک https://httpd.apache.org/docs/current/rewrite/flags.html مشاهده کنید.

saeid1346
April 21st, 2016, 15:39
سلام
nc مخفف nocase است که یه کاری میکنه که وب سرور به بزرگی و کوچکی آدرس دامنه ای که وارد کردید توجه ای نداشته باشه.
L مخفف last هست که به وب سرور میگه این آخرین شرطی هست که در این rewrite قرار میدیم.
R نوع ریدایرکت است که جلوش نوشته 301

سایر تگ ها هم می تونید در این لینک https://httpd.apache.org/docs/current/rewrite/flags.html مشاهده کنید.

سپاس از پاسختون

من حدود ده تا ادرسه میخوام ریدارکت کنم پس باید روی اخرین کد ریدارکت l رو بنویسم ؟
برای مثلا



rewritecond %{http_host} ^siteghadim1.ir [NC]
rewriterule ^(.*)$ http://sitejadid.ir/$1 [R=301]


rewritecond %{http_host} ^siteghadim2.ir [NC]
rewriterule ^(.*)$ http://sitejadid.ir/$1 [L,R=301]