نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی پرتال اطلاعاتی

Vyakhir ucp php redirect. PHP لینک های خارجی را تغییر مسیر دهد

فرض کنید کاربرانی را می خواهید که از صفحه بازدید کنند https://example.com/initial.phpصفحه https://example.com/final.php نمایش داده شد. این کار را می توان با استفاده از چندین روش PHP، JavaScript و HTML انجام داد. در این مقاله، هر یک از روش‌هایی را که می‌توانید برای ریدایرکت PHP به صفحه دیگری استفاده کنید، به شما معرفی می‌کنیم.

در اینجا برخی از متغیرهایی که از آنها استفاده خواهیم کرد آورده شده است:

استفاده از تابع هدر () PHP برای تغییر مسیر URL

اگر می خواهید یک تغییر مسیر از initial.php به final.php اضافه کنید، می توانید کد زیر را در صفحه وب initial.php قرار دهید. یک هدر موقعیت مکانی جدید به مرورگر ارسال می کند:

در اینجا ما از تابع PHP header () برای ایجاد تغییر مسیر استفاده می کنیم. شما باید این کد را قبل از هر HTML یا متنی قرار دهید. در غیر این صورت پیغام خطایی دریافت خواهید کرد که سربرگ قبلا ارسال شده است. همچنین می توانید از بافر خروجی برای جلوگیری از این خطای ارسال هدر استفاده کنید. مثال زیر این روش تغییر مسیر PHP را در عمل نشان می دهد:

برای انجام تغییر مسیر با استفاده از تابع هدر () ، تابع ob_start () باید اولین مورد در اسکریپت PHP باشد. این از بروز خطاهای هدر جلوگیری می کند.

به عنوان یک اقدام اضافی، می‌توانید دای () یا خروج () را بلافاصله پس از تغییر مسیر هدر اضافه کنید تا از اجرای بقیه کد صفحه وب جلوگیری کنید. در برخی موارد، ربات‌های جستجوگر یا مرورگرها ممکن است به نشانی که در هدر موقعیت مکانی وجود دارد توجه نکنند. آنچه مملو از تهدیدات احتمالی برای امنیت سایت است:

برای روشن شدن وضعیت: مرگ () یا خروج () ربطی به تغییر مسیر ندارد. از آنها برای جلوگیری از اجرای بقیه کدهای موجود در صفحه وب استفاده می شود.

هنگام استفاده از تغییر مسیرهای PHP به یک صفحه، توصیه می شود هنگام تعیین مقدار هدر Location از URL های مطلق استفاده کنید. اما آدرس های اینترنتی نسبی نیز کار خواهند کرد. همچنین می توانید از این ویژگی برای هدایت کاربران به سایت های خارجی یا صفحات وب استفاده کنید.

خروجی کد تغییر مسیر جاوا اسکریپت با استفاده از تابع echo () PHP

این یک راه حل PHP خالص نیست. با این حال، آن نیز موثر است. می توانید از تابع echo () PHP برای خروجی کد جاوا اسکریپت استفاده کنید که تغییر مسیر را مدیریت می کند.

اگر از این راه حل استفاده می کنید، نیازی به استفاده از بافر خروجی ندارید. این همچنین از خطاهای مربوط به ارسال هدر جلوگیری می کند.

در زیر چند نمونه وجود دارد که از روش‌های مختلف جاوا اسکریپت برای تغییر مسیر از صفحه فعلی به صفحه دیگر استفاده می‌کنند:

self.location="https://example.com/final.php";"؛ پژواک""؛ پژواک""؛ پژواک""; ?>

تنها ایراد این روش هدایت به سایت PHP دیگر این است که جاوا اسکریپت در سمت کلاینت اجرا می شود. و بازدیدکنندگان شما ممکن است جاوا اسکریپت را غیرفعال کرده باشند.

استفاده از متا تگ های HTML برای تغییر مسیرها

همچنین می توانید از HTML اولیه برای انجام تغییر مسیر استفاده کنید. این ممکن است غیرحرفه ای به نظر برسد، اما کار می کند. و نیازی به نگرانی در مورد غیرفعال شدن جاوا اسکریپت در مرورگر یا ارسال خطای هدر وجود ندارد:

همچنین می توانید از آخرین خط مثال قبلی برای بازخوانی خودکار صفحه در هر " استفاده کنید. n"ثانیه ها به عنوان مثال، کد زیر به طور خودکار صفحه را هر 8 ثانیه یک بار تازه می کند:

نتیجه

در این مقاله، من به سه روش مختلف تغییر مسیر php و مزایا و معایب آنها پرداختم. روش دقیق استفاده به اهداف پروژه بستگی دارد.

ترجمه مقاله " چگونه می توانم قبل از بارگذاری صفحه در PHP یک تغییر مسیر به آدرس های مختلف انجام دهم»یک تیم پروژه دوستانه.

خوب بد

آخرین ویرایش در 25 فوریه 2017 توسط وینسی انجام شد.

مکانیسم تغییر مسیر PHP برای هدایت کاربر از یک صفحه به صفحه دیگر بدون کلیک کردن روی هیچ لینکی استفاده می شود. این در چنین شرایطی که تغییر مسیر باید در پس‌زمینه انجام شود، مفید خواهد بود. به عنوان مثال، هنگامی که کاربر در حال دسترسی به درگاه پرداخت است، تغییر مسیر باید به طور خودکار انجام شود تا URL با استفاده از اسکریپت PHP اطلاع رسانی شود.

PHP تابعی از پیش تعریف شده با نام هدر () را برای تغییر مسیر URL ارائه می دهد. با استفاده از این تابع هدر () باید هدر موقعیت مکانی را با تعیین URL که صفحه باید به آن هدایت شود ارسال کنیم.

برخلاف مواردی که چندین راه برای مدیریت کارهای تغییر مسیر URL بر اساس مرورگر وجود دارد، PHP از چنین سردرگمی جلوگیری می کند و عملکرد هدر () یک اثر را در همه مرورگرها ایجاد می کند. فقط برای آن، با مقاله جاوا اسکریپت به این نتیجه رسیده ایم که تغییر مسیر سمت سرور ترجیح داده می شود.

PHP Redirect Syntax

سربرگ ("مکان: هدف-url");

در دستور فوق ریدایرکت PHP، باید URL معتبری را جایگزین کنیم که می خواهیم به آن منتقل شویم. ما می توانیم URL مطلق یا URL نسبی را برای این هدر مکان مشخص کنیم. اگر URL نسبی را مشخص کنیم، صفحه ای را در دامنه ما که در آن وجود داریم جستجو می کند.

توجه داشته باشید:قبل از تعیین URL صفحه برای سرصفحه مکان، باید مطمئن شویم که صفحه وجود دارد.

احتیاط قبل از تغییر مسیر

قبل از اجرای تغییر مسیر PHP، باید اطمینان حاصل کنیم که هیچ خروجی قبل از خطی که تابع هدر () را فراخوانی می‌کنیم، به مرورگر ارسال نمی‌شود. مثلا،

اکو "پی اچ پی تغییر مسیر"؛ سربرگ ("مکان: سایت")؛

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

هشدار: نمی توان اطلاعات سرصفحه را تغییر داد - سرصفحه ها قبلاً توسط (...

این نه تنها برای تابع هدر، بلکه برای همه توابع PHP مانند set_cookie ()، session_start () و غیره قابل استفاده است، هر آنچه که می تواند هدر را تغییر دهد. برای آن، ما باید تمام محتوایی را که ارسال سرصفحه موقعیت مکانی به مرورگر را متوقف می کند، حذف کنیم.

راه های ممکن برای ارسال خروجی

  • محتوای HTML مانند متن یا برچسب.
  • فاصله های سفید غیر ضروری قبل از جداکننده های PHP.
  • خطای PHP یا هشدارهای هشداری که قبل از تماس تغییر مسیر رخ می دهد.
  • PHP، مانند، echo ()، چاپ ().

اقدامات ایمنی از خروجی ارسال شده قبل از تغییر مسیر PHP

  • از آنجایی که محتوای HTML باید قبل از تغییر مسیر ارسال شود، می‌توانیم منطق PHP را از محتوای HTML جدا کنیم.
  • برای قرار گرفتن در قسمت ایمنی می توانیم قرار دهیم خروجدستور بعد از دستور تغییر مسیر فایل PHP. به عنوان مثال، هدر ("مکان: سایت")؛ خروج؛
  • ما می توانیم بافر خروجی PHP را فعال کنیم تا ارسال خروجی به مرورگر متوقف شود و در عوض در بافر ذخیره شود.

پیمایش سریع در این صفحه:

اگر تصمیم به نوشتن یک اسکریپت و تغییر مسیر PHP دارید، مزایای این مرحله واضح است: PHP یک زبان برنامه نویسی سرور گرا است. تغییر مسیر از طریق یک اسکریپت روی سرور انجام می شود، نه در مرورگر بازدیدکنندگان. برخی از تغییر مسیرها را می توان در سمت مشتری انجام داد - از طریق تغییر مسیر js (یعنی از طریق تغییر مسیر جاوا اسکریپت).

این یک رویکرد انعطاف‌پذیرتر و همه‌کاره‌تر است و می‌توانید بر خلاف روش‌های دیگر، چندین نوع تغییر مسیر را در PHP انجام دهید. در اینجا رایج ترین نوع ریدایرکت هایی که می توان در PHP انجام داد آورده شده است: الف) تغییر مسیر 301 PHP (وضعیت تغییر مسیر دائمی)، ب) تغییر مسیر 302 PHP (وضعیت تغییر مسیر موقت)، ج) به روز رسانی.

این مقاله در درجه اول برای وب مسترهای مبتدی مفید خواهد بود که به دنبال راه هایی برای پیاده سازی تغییر مسیر URL هستند، زمانی که این امکان با استفاده از راه حل های رایج دیگر مانند htaccess وجود ندارد.

هدر تابع PHP

به عنوان مثال، فرض کنید می خواهید به این URL http://www.somewebsite.com/target.php تغییر مسیر دهید. در صفحه اصلی PHP، فقط باید این اسکریپت تغییر مسیر را فراخوانی کنید:

این آزمایش ساده را روی لوکال هاست خود نیز امتحان کنید:

1) ویرایشگر متن خود را باز کنید و این کد را وارد کنید:

آن را به عنوان targetpage.php ذخیره کنید.

2) یک فایل متنی خالی دیگر باز کنید و این کد را وارد کنید:

آن را به عنوان originalpage.php ذخیره کنید.

3) اکنون مرورگر وب خود را راه اندازی کنید. در نوار آدرس مرورگر خود وارد کنید: http://localhost/originatingpage.php

4) متوجه خواهید شد که پس از فشار دادن دکمه enter، این URL: http: //localhost/originatingpage.php به http: //localhost/targetpage.php و targetpage.php هدایت می شود و عبارت "Hi this is" را مشاهده می کنید. کدکس -x".

یکی از رایج ترین اشتباهات را می توان در طراحی کد تغییر مسیر html یافت:

این آزمایش را امتحان کنید:

به اسکریپت originatingpage.php بروید و هر تگ HTML را اضافه کنید:

هدر ("مکان: http: //localhost/targetpage.php")؛

فرض کنید شما کدی مانند این دارید:

این یک خطای تغییر مسیر است</ TITLE> </ HEAD> <body> <? PHP header("Location: http://localhost/targetpage.php"); > </ BODY> </ HTML> </p><p>2) فایل را ذخیره کنید.</p> <p>3) اسکریپت originating.php را دوباره در آن اجرا کنید. اگر هیچ خطایی نمی بینید، متوجه خواهید شد که همچنان صرفاً به targetpage.php هدایت می شود.</p> <p>4) اکنون سعی کنید URL هدف را تغییر دهید تا به یک سایت واقعی اشاره کنید، به عنوان مثال:</p><p> <html> <head> <title>مثالی از خطای تغییر مسیر</ TITLE> </ HEAD> <body> <? PHP header("Location: http://localhost/targetpage.php"); > </ BODY> </ HTML> </p><p>5) originatingpage.php را در هاست از راه دور در ریشه سایت خود آپلود کنید.</p> <p>6) اسکریپت را در مرورگر با فراخوانی url originatingpage.php اجرا کنید، به عنوان مثال: http://www.php-developer.org/originatingpage.php</p> <p>7) متوجه خواهید شد که این بار با یک خطا مواجه می شوید:</p><p>هشدار: نمی توان اطلاعات هدر را تغییر داد - هدرهایی که قبلاً توسط (خروجی در /home/phpdevel/public_html/originatingpage.php:6 شروع شده است) در /home/phpdevel/public_html/originatingpage.php در خط 7 ارسال شده است.</p><p>اینجا چه خبره؟ دلیل مشکل این است که شما قبلا کد HTML را قبل از هدر تابع رندر کرده اید.</p> <h2>استفاده از تغییر مسیر چیست؟</h2> <p>با تغییر مسیر، می توانید کاربران را از یک صفحه وب به صفحه دیگر هدایت کنید. همچنین، اگر مثلاً در سایت شما متون پیوندهای مقالات به شکل نامناسبی (مجموعه ای از اعداد یا نشانه ها) باشد، می توان با اعمال نویسه گردانی و تغییر مسیر به این پیوندها، آنها را تغییر داد. امکانات تغییر مسیر تقریبا نامحدود است! مزایای این روش برای افزایش ایندکس صفحات، بهبود عملکرد سایت و جذب کاربران آشکار است.</p> <p><span class="Xf6dVRetPVY"></span></p> <p>همه می توانند ارسال کنند. اما تغییر مسیر درست یک هنر کامل است. اما هدایت کاربران به مسیر مورد نظر در اینترنت حتی دشوارتر است. برای این کار، تغییر مسیر php بهترین گزینه است.</p> <h2>این تغییر مسیر چیست؟</h2> <p>در برنامه نویسی وب، شرایطی وجود دارد که شما نیاز دارید کاربر را با دنبال کردن یک پیوند به آدرس دیگری هدایت کنید. البته، در نگاه اول، اجرای چنین تغییر مسیری کمی "غیرقانونی" به نظر می رسد. در عمل، چنین تغییر مسیری نه تنها در بین مجرمان سایبری، بلکه در بین وب مسترهای صادق نیز مورد تقاضا است:</p> <p>در چه مواردی ممکن است نیاز به تغییر مسیر باشد:</p> <ul><li>هنگامی که موتور سایت جایگزین می شود، معماری کل منبع در نتیجه تغییر می کند. سپس این مشکل پیش می آید که چگونه یک تغییر مسیر انجام دهیم.</li> <li>هنگام ترسیم مجدد ساختار منبع - اضافه کردن، حذف یا انتقال کل بخش ها یا یک ماده وجود دارد. در حالی که این فرآیند در حال انجام است، می توانید به طور موقت ترتیبی دهید که کاربر به بخش مورد نظر هدایت شود.</li> <li>اگر سایت اخیراً نام دامنه خود را تغییر داده است - پس از تغییر نام دامنه، دامنه قدیمی برای مدتی در نتایج جستجو ظاهر می شود. در این صورت کاربر به صورت خودکار توسط موتور جستجو به دامنه جدید هدایت می شود.</li> <li>در طول فرآیند مجوز - به عنوان یک قاعده، در یک سایت بزرگ دو گروه از کاربران وجود دارد: بازدیدکنندگان معمولی و مدیران منابع. در این صورت، اجرای تغییر مسیر برای هر کاربر با توجه به حقوق و نقش او منطقی است. پس از مجوز، مدیر یا مدیران سایت به بخش مدیریتی منبع و بازدیدکنندگان به قسمت کاربری منبع می روند.</li> </ul><h3>ویژگی های تغییر مسیر به php</h3> <p>بر خلاف زبان های دیگر، php دارای مزایایی در تغییر مسیر است:</p> <ul><li>Php یک زبان برنامه نویسی سمت سرور است. بنابراین، تغییر مسیر نه در کد html صفحات نمایش داده شده در مرورگر، بلکه در اسکریپت میزبانی شده روی سرور انجام می شود.</li> <li>تغییر مسیر php را می توان به روش های مختلفی پیاده سازی کرد. این امر کاربرد آن را تا حد زیادی گسترش می دهد.</li> <li>به دلیل پردازش داده ها در سرور، تغییر مسیر پیاده سازی شده با php کمتر در معرض فیلترهای موتور جستجو قرار می گیرد.</li> </ul><p>برای تغییر مسیر در php از تابع هدر () استفاده می شود. برای ارسال هدر http استفاده می شود. نحو آن این است:</p> <p>سرصفحه خالی (رشته $ string [، bool $ جایگزین = درست [، int $ http_response_code]])</p> <p>آرگومان های پذیرفته شده توسط تابع عبارتند از:</p> <p><ul><br> <li><b>رشته $ رشته</b>- خط عنوان؛</li><br> </ul></p> <p>این استدلال دو نوع است. اولین مورد ارسال کد وضعیت اتصال است. با "HTTP /" شروع می شود. نوع دیگر، همراه با هدر، یک کد وضعیت (REDIRECT 302) را به مرورگر مشتری ارسال می کند. این آرگومان با "Location:" شروع می شود:</p> <p><br><img src='https://i0.wp.com/internet-technologies.ru/wp-content/uploads/articles/201411/osobennosti-redirekta-na-300248.jpg' width="100%" loading=lazy loading=lazy></p> <ul><li>bool $ جایگزین یک ویژگی bool اختیاری است. مسئول نادیده گرفتن عنوان قبلی است. اگر درست باشد، عنوان یا عنوان قبلی از همان نوع جایگزین می شود. اگر آرگومان بر روی نادرست تنظیم شود، سربرگ بازنویسی نخواهد شد. به طور پیش فرض، روی true تنظیم شده است.</li> <li>http_response_code - آرگومان کد پاسخ HTTP را مجبور می کند. نصب کد با موفقیت انجام می شود به شرطی که آرگومان رشته خالی نباشد.</li> </ul><p>کد وضعیت HTTP بخشی از خط بالای پاسخ سرور است. این کد از سه عدد تشکیل شده است و به دنبال آن یک کتیبه توضیحی به زبان انگلیسی وجود دارد. رقم اول مسئول طبقه ایالت است. کدهای تغییر مسیر با کدهای 300 تا 307 مطابقت دارند. شرح کامل آنها را می توان در مستندات فنی مربوطه یافت.</p> <p>هنگام استفاده از تابع هدر () برای تغییر مسیر پیوندهای خارجی، مکان تماس بسیار مهم است. در کد، باید بالای همه تگ های html باشد:</p> <p><br><img src='https://i0.wp.com/internet-technologies.ru/wp-content/uploads/articles/201411/kod-sostojanija-http-300249.jpg' width="100%" loading=lazy loading=lazy></p> <h3>اعمال تغییر مسیر هدر ().</h3> <p>برای نشان دادن نحوه عملکرد یک تابع در یک سرور محلی، باید دو فایل ایجاد کنید. بیایید یکی از آنها را redirect.php و دیگری را redirect2.php بنامیم. در داخل اولین، فراخوانی تابع را در قالب زیر قرار می دهیم:</p> <p><?php header("Location: http://localhost/ redirec2t.php "); ?></p> <p>خط را در یک فایل دیگر قرار دهید:</p> <p>echo "سلام! شما در فایل redirect2.php هستید";</p> <p><br><img src='https://i2.wp.com/internet-technologies.ru/wp-content/uploads/articles/201411/privet-vi-nahodites-v-f-300258.jpg' width="100%" loading=lazy loading=lazy></p> <p>چند مثال کاربردی تر از استفاده از تغییر مسیرهای php:</p> <ul><li>اجبار کردن کد وضعیت http - هنگام استفاده از اولین آرگومان تابع هدر () از نوع " <span>محل</span>"به طور پیش فرض، کد وضعیت" <span>302 </span>» ( <span>به طور موقت منتقل شد</span>). این می تواند هنگام انتقال یک منبع به نام دامنه دیگر مشکل ساز شود. در موتورهای جستجو، چنین تغییر مسیر موقتی را می توان به تاخیر انداخت. از این گذشته ، موتور جستجو دائماً کد وضعیت را تجزیه و تحلیل می کند. و می گوید " <span>به طور موقت منتقل شد</span>". نمونه ای از بازنویسی اجباری کد وضعیت " <span>302 </span>"در" <span>301 </span>» ( <span>به طور دائم نقل مکان کرد</span>):</li> </ul><p><?php header("Location: http://localhost/redirect2.php",true, 301); ?></p> <p>همچنین رونویسی در دو مرحله امکان پذیر است. خط اول کد وضعیت را بازنویسی می کند و خط دوم به یک آدرس جدید هدایت می شود:</p> <p><?php header("HTTP/1.1 301 Moved Permanently"); header("Location: http://redirect2.php"); ?></p> <ul><li>استفاده از پیوندهای خارجی تغییر مسیر برای تغییر مسیر بسته به نقش کاربر. نقش در طی مراحل احراز هویت تعیین می شود. مقداری که باید پردازش شود به متغیر $ who نوشته می شود:</li> </ul><p><?php switch ($who){ case "user": $redirect_url = "/blog.html"; break; case "author": $redirect_url = "/author.html"; break; case "admin": $redirect_url = "/admin.html"; break; default: $redirect_url = "/registration.html"; } header("HTTP/1.1 200 OK"); header("Location: http://".$_SERVER["HTTP_HOST"].$redirect_url); exit(); ?></p> <ul><li>مثال عملی ساده شده اجرای تغییر مسیر پیوند خارجی - با کلیک بر روی پیوند به صفحه php منتهی می شود. از اینجا کاربر پس از 5 ثانیه به Rambler منتقل می شود. کد Html:</li> </ul><p>مرا هل بده</p> <p>کد فایل Redirect3.php:</p> <p><?php header("Refresh: 5; url=http://rambler.ru/"); echo "Привет!Через 5 секунд вас выкинет на Рамблер))"; ?></p> <p><br><img src='https://i2.wp.com/internet-technologies.ru/wp-content/uploads/articles/201411/kod-faila-300252.jpg' width="100%" loading=lazy loading=lazy></p> <p>خوب، در اینجا ما اصول تغییر مسیر به php را یاد گرفتیم. اکنون می توانید با خیال راحت کاربران را در مسیر درست هدایت کنید. نکته اصلی این است که در جهت اشتباه نکنید، در غیر این صورت تمام کاربران خود را به سایت شخص دیگری خواهید آورد ...</p> <p>صفحه اصلی > برنامه ها > آپاچی</p><h1>تغییر مسیر 301 - تغییر مسیر صحیح از طریق htaccess و هدر php</h1> <p><b>تغییر مسیر 301</b>(301 Permanent Redirect) در چند مورد استفاده می شود: هنگام تغییر دامنه، هنگام جابجایی صفحه سایت، برای چسباندن نام سایت با و بدون www. این برای انتقال رتبه صفحه (PR) و حفظ ترافیک جستجو مهم است.</p> <p>من خودم زمانی با نیاز به آن مواجه شدم که پس از انتقال پورتال خود از منطقه com به ru، متوجه شدم که Google، Yandex و سایر موتورهای جستجو، به طور طبیعی، سایت قدیمی را "فراموش نمی کنند" (تا حدی به این دلیل که من صفحه خود را برای رسیدگی به خطاهای 404 نادرست تنظیم کرده بود که یک کد پاسخ OK 200 را برگرداند). علاوه بر این، گوگل به مدت شش ماه PR = 0 را برای سایت جدید گذاشت، اگرچه برای سایت قبلی PR = 4 را حفظ کرد.</p> <p>موضوع ریدایرکت 301 به طور مداوم در انجمن های مختلف سئو مورد بحث قرار می گیرد و هر موتور جستجو دارای بخش های خاصی در سیستم کمک خود است. در حالی که سعی می کردم آن را بفهمم، گزینه های زیر را برای سازماندهی تغییر مسیر پیدا کردم که برخی از آنها را خودم امتحان کردم.</p> <p>ریدایرکت 301 بهترین روش برای حفظ رتبه بندی موتور جستجو هنگام انتقال یک صفحه یا سایت است. کد "301" به عنوان "انتقال دائمی" تفسیر می شود.</p> <ol><li><h4>تغییر مسیر ساده (در فایل htaccess. یا httpd.conf برای آپاچی):</h4> <span>تغییر مسیر 301 / http://www.you.com/new.htm</span><br>جایی که: <br><b>تغییر مسیر 301</b>- این یک دستورالعمل است که می گوید صفحه منتقل شده است <br><b>/ </b>- به این معنی است که همه چیز از سطح بالای سایت، از جمله همه زیر شاخه ها، هدایت می شود <br><b>http://www.you.com/new.htm</b>- یک صفحه یا سایت جدید (اگر تغییر مسیر به سایت رفت، آخرین "/" را فراموش نکنید). <p>برای تغییر مسیر فقط یک صفحه، حفظ روابط عمومی صفحه قدیمی: <br><span>تغییر مسیر 301 /old/old.htm http://www.you.com/new.htm</span><br>جایی که: <br><b>/old/old.htm</b>- مسیر و نام صفحه قدیمی</p> <p>نحو مشابه برای تغییر مسیرهای سایت: <br><span>تغییر مسیر دائمی / http://www.you.com/</p><p>مثال تغییر مسیر دایرکتوری: <br><span>Redirect Permanent / Old-directory http://www.domain.com/new-directory/</p><p>به عنوان مثال، ما کسانی را که test را وارد کردند به www.test.com و بقیه را به enter.test.com هدایت می کنیم (ترتیب ورودی ها مهم است):</p> <span>تغییر مسیر دائمی / تست http://www.test.com/ تغییر مسیر دائمی / http://enter.test.com/</span> <p><i>توجه داشته باشید:</i>برای اهداف من (تغییر دامنه) اولین گزینه یک تغییر مسیر ساده 301 کافی بود.</p></li><li><h4>با استفاده از mod_rewrite (نوشته شده در فایل htaccess):</h4> <p>مشکل کلاسیک ادغام نام سایت با و بدون www به شرح زیر حل می شود:</p> <span>Options + FollowSymLinks RewriteEngine در RewriteCond% (HTTP_HOST) ^ yoursite \ .com RewriteRule ^ (. *) $ Http://www.yoursite.com/$1.</span> <p>یا نحو جایگزین:</p> <span>Options + FollowSymLinks RewriteEngine در RewriteCond% (HTTP_HOST) ^ دامنه \ .com $ RewriteRule ^ (. *) $ Http://www.domain.com/$1</span> <p>تعیین <b> </b>یعنی: مشتری را تغییر مسیر دهید و یک کد وضعیت 301 (R = 301) برای او ارسال کنید و این قانون را ماندگار کنید (L).</p> <p>دامنه قدیمی را به دامنه جدید هدایت کنید:</p> <span>Options + FollowSymLinks RewriteEngine در RewriteRule (. *) Http://www.newdomain.com/$1</span> <p>به عنوان مثال، اگر می خواهید فایل rewrite.html به جای rewrite.htm بارگذاری شود، به htaccess. اضافه کنید:</p> <span>RewriteEngine در RewriteBase / RewriteRule ^ rewrite \ .htm $ rewrite.html</span> <p>برای جایگزینی همه فایل‌های htm با فایل‌های html:</p> <span>RewriteEngine در RewriteBase / RewriteRule ^ (. *) \. Htm $ $ 1.html</span></li><li><h4>تغییر مسیر پی اچ پی:</h4> <span> <?php header("HTTP/1.1 301 Moved Permanently"); header("Location: http://www.newdomain.ru/newdir/newpage.htm"); exit(); ?> </span>بهتر است HTTP / 1.1 را مشخص کنید، زیرا قدیمی ترها از میزبانی مشترک پشتیبانی نمی کنند. به یاد داشته باشید که قبل از فراخوانی هدر نباید چیزی خروجی (مانند اکو یا چاپ) ارسال شود. بنابراین بهتر است این کد را در ابتدای یک اسکریپت php قرار دهید. نسخه کاملتر ریدایرکت php با ذخیره صفحه ارسال شده و پارامترهای فراخوانی: <span> <? $ref=$_SERVER["QUERY_STRING"]; if ($ref!="") $ref="?".$ref; header("HTTP/1.1 301 Moved Permanently"); header("Location: http://newdomain.com/".$ref); exit(); ?> </span></li><li><h4>به ASP تغییر مسیر دهید</h4> <%@ Language=VBScript %> </li><li><h4>به ASP.NET تغییر مسیر دهید</h4> <span> <script runat="server"> private void Page_Load(object sender, System.EventArgs e) { Response.Status = "301 Moved Permanently"; Response.AddHeader("Location","http://www.new-url.com"); } </script> </span></li><li><h4>تغییر مسیر به ColdFusion</h4> <span> <.cfheader statuscode="301" statustext="Moved permanently"> <.cfheader name="Location" value="http://www.new-url.com"> </span></li><li><h4>تغییر مسیر با متا رفرش</h4> <span> <meta content="0; url=http://newdomain.com"> </span> <p>جایی که 0 تاخیر ارسال بر حسب ثانیه است، newdomain.com صفحه ای است که در آن فوروارد می کنیم. برخی از مرورگرهای قدیمی از refresh متا با مقدار 0 پشتیبانی نمی کنند، برای سازگاری، می توانید مقدار غیر صفر را تعیین کنید، اگرچه، به نظر من، این دیگر مرتبط نیست. چنین تغییر مسیری نمی تواند سایت های شما را (با و بدون www) بچسباند و روابط عمومی را منتقل کند، زیرا توسط موتورهای جستجو نادیده گرفته می شود. 200 اوکی برمیگرده که همون صفحه عادیه. این تکنیک در بین هرزنامه ها محبوب است و فقط باید در صفحاتی استفاده شود که ایندکس نمی شوند.</p></li><li><h4>تغییر مسیر با جاوا اسکریپت</h4> <p>تغییر مسیرهای جاوا اسکریپت اغلب با استفاده از تابع setTimeout ("تابع"، تاخیر) اجرا می شود.</p> <p>به عنوان مثال، در 0.1 ثانیه پس از بارگذاری کد، به طور خودکار روی دکمه "ارسال" فرم "فرم جستجو" کلیک کنید:</p> <p>setTimeout ("document.forms [" searchform "]. Submit.click ()", 100);</p> <p>می توانید هر اقدامی را روی دکمه "ارسال" آویزان کنید، به عنوان مثال، یک URL جدید در این پنجره باز کنید. به هر حال، چنین تغییر مسیرهایی هنگام سازماندهی DorWay رایج تر است - مرورگر کاربر به صفحه دیگری هدایت می شود و ربات جستجویی که جاوا اسکریپت را "نمی فهمد" این صفحه را که برای کاربر غیرقابل دسترسی است فهرست می کند. سازندگان درگاه روی آن متنی پر از کلمات کلیدی "ضروری" قرار می دهند.</p> <p>برای تغییر مسیر ساده به صفحه دیگری، می توانید یکی از گزینه های کد جاوا اسکریپت را وارد کنید:</p> <ul><li>مکان = "http://www.newdomain.com";</li><li>document.location.href = "http://www.newdomain.com";</li><li>window.location.reload ("http://www.newdomain.com")؛</li><li>document.location.replace ("http://www.newdomain.com")؛</li> </ul>در حالت دوم، دیگر امکان بازگشت به صفحه ای که تغییر مسیر را انجام داده است وجود نخواهد داشت، زیرا آدرس آن از تاریخچه پاک می شود، که اغلب ضروری است. اگر به تأخیر زمانی نیاز دارید، می توانید مکان = "http://www.newdomain.com" را صادر کنید. به عنوان یک تابع و آن را در setTimeout ("function ()"، delay_in_ms) وارد کنید. ریدایرکت به جاوااسکراپ ریدایرکت 301 نیست و روابط عمومی صفحه را منتقل نمی کند و نمی تواند از چسباندن آن اطمینان حاصل کند.</li> </ol>بیایید به برخی از ویژگی های اضافی تغییر مسیرها توجه کنیم: <ul><li>روش‌های تغییر مسیر .htaccess فقط روی سرورهای لینوکس که آپاچی با ماژول Mod-Rewrite فعال دارند کار می‌کنند.</li><li>استفاده از htaccess یک بار اضافی روی سرور آپاچی ایجاد می کند، نوشتن همان دستورات در فایل پیکربندی hpptd.conf آن کارآمدتر است، اما، به عنوان یک قاعده، مدیر وب سایت به آن دسترسی ندارد.</li><li>ریدایرکت 301 به شما امکان می دهد در ترافیک صرفه جویی کنید و روابط عمومی صفحه را به موتورهای جستجو منتقل کنید (مطمئناً برای گوگل).</li><li>فرآیند چسباندن و انتقال روابط عمومی زمان زیادی طول می کشد - تا چندین ماه و همچنین به موتور جستجو بستگی دارد، بنابراین تا زمان انتقال نهایی، صفحه یا سایت قدیمی را حذف نکنید.</li><li>برخی از موتورهای جستجو به تنظیمات اضافی برای چسباندن سایت ها نیاز دارند، به عنوان مثال، برای Yandex، شما باید robots.txt را نیز ثبت کنید.</li> </ul><p><b>نتیجه.</b>یک راه مطمئن برای تغییر مسیر صفحات قدیمی به یک سایت جدید یا قدیمی به یک URL جدید، با حفظ رتبه بندی موتورهای جستجو، استفاده از ریدایرکت 301 است که به شما امکان می دهد رتبه صفحه قدیمی یک صفحه را به سایت جدید منتقل کنید.</p> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast_after?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy loading=lazy>");</script> </div> <div class="post-social-counters-block"> <div style="margin-top: 12px"> <noindex></noindex> </div> </div> </div> </div> <a name="comments"></a> <h3 class="best-theme-posts-title">مقالات مرتبط برتر</h3> <div class="container-fluid"> <div class="best-theme-posts row"> <div class="theme-post col-sm-4"> <a href="https://bumotors.ru/fa/fallout-4-izmenenie-vneshnosti-konsol-otlichaetsya-dvizhenie-myshi-po.html"> <div class="img_container"><img src="/uploads/686669656a5df8de6a6f9d463fe60026.jpg" border="0" alt="حرکت های مختلف ماوس به صورت عمودی و افقی" width="320" height="180" / loading=lazy loading=lazy></div> <span class="theme-post-link">حرکت های مختلف ماوس به صورت عمودی و افقی</span> </a> </div> <div class="theme-post col-sm-4"> <a href="https://bumotors.ru/fa/kak-szhat-tekstury-v-fallout-4-ruchnaya-nastroika-grafiki.html"> <div class="img_container"><img src="/uploads/d7c98012600dd0a7e0e0c14fa8d2e1eb.jpg" border="0" alt="نحوه فشرده سازی بافت ها در fallout 4" width="320" height="180" / loading=lazy loading=lazy></div> <span class="theme-post-link">نحوه فشرده سازی بافت ها در fallout 4</span> </a> </div> <div class="theme-post col-sm-4"> <a href="https://bumotors.ru/fa/nizkie-nastroiki-grafiki-fallout-4-ostalos-tolko-ponyat-nuzhnyi-uroven.html"> <div class="img_container"><img src="/uploads/da3d853bd41405e0322c2a1e985df14b.jpg" border="0" alt="تنها برای درک سطح مورد نیاز باقی مانده است" width="320" height="180" / loading=lazy loading=lazy></div> <span class="theme-post-link">تنها برای درک سطح مورد نیاز باقی مانده است</span> </a> </div> </div> </div> </div> <a name="comments"></a> </div> <div class="right-column col-sm-4 col-md-4"> <div class="write"> <span class="tags-title">دسته بندی ها:</span> <ul style="height: 286px;" id="right-tags" data-tagscount="18" data-currentmaxtag="10" class="tags"> <li class=""><a href="https://bumotors.ru/fa/category/programs/">برنامه ها</a></li> <li class=""><a href="https://bumotors.ru/fa/category/safety/">ایمنی</a></li> <li class=""><a href="https://bumotors.ru/fa/category/windows-10/">ویندوز 10</a></li> <li class=""><a href="https://bumotors.ru/fa/category/iron/">اهن</a></li> <li class=""><a href="https://bumotors.ru/fa/category/windows-8/">ویندوز 8</a></li> <li class=""><a href="https://bumotors.ru/fa/category/vkontakte/">در تماس با</a></li> <li class=""><a href="https://bumotors.ru/fa/category/errors/">خطاها</a></li> </ul> </div> <div class="banner"> </div> </div> </div> </div> <div style="clear:both"></div> </div> <div class="footer"> <div class="subscribe"> <div class="main-wrapper container"> <div class="row"> <div class="col-sm-8"> </div> <div class="col-sm-4"> <div class="social"> <a href="" class="vk social-ico"></a> <a href="https://facebook.com/" class="fb social-ico"></a> <a href="https://twitter.com/" class="tw social-ico"></a> </div> </div> </div> </div> </div> <div class="info"> <div class="main-wrapper container"> <div class="row"> <span class="footer-info col-xs-12">© 2021 bumotors.ru. نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی پرتال اطلاعاتی</span> </div> </div> </div> </div> </body> </html>