การเปลี่ยนเส้นทาง URL httpเป็นการดำเนินการเปลี่ยน URL อัตโนมัติจาก URL หนึ่งไปยังอีก URL
การเปลี่ยนเส้นทางหน้า URLเป็นการดำเนินการเปลี่ยน URL อัตโนมัติจาก URL หนึ่งไปยังอีก URL
การเปลี่ยนเส้นทางนี้ทำขึ้นด้วยเหตุผลดังต่อไปนี้:
ผู้ใช้อาจเข้าถึง URL เก่าจากลิงก์ภายนอกเก่าหรือบุ๊กมาร์ก
โดยผู้ดูแลเว็บไซต์ที่เพิ่มสคริปต์
การเปลี่ยนเส้นทางฝั่งเซิร์ฟเวอร์ทำได้ในเซิร์ฟเวอร์ โดยการกำหนดค่าซอฟต์แวร์เซิร์ฟเวอร์ Apache / IIS หรือโดยใช้สคริปต์ PHP / ASP / ASP.NET
นี่เป็นวิธีที่ต้องการในการเปลี่ยนเส้นทาง URL เนื่องจากคุณสามารถส่งคืนรหัสสถานะ HTTP 301 Moved Permanently ได้
เครื่องมือค้นหาใช้สถานะ 301 เพื่อโอนอันดับของหน้าจาก URL เก่าไปยัง URL ใหม่
การเปลี่ยนทิศทางฝั่งไคลเอ็นต์ทำได้ในเว็บเบราว์เซอร์ของผู้ใช้ โดยใช้แท็กรีเฟรชเมตา HTML หรือโค้ด Javascript
การเปลี่ยนเส้นทางไคลเอ็นต์ไม่เป็นที่นิยม เนื่องจากไม่ส่งคืนรหัสสถานะ HTTP 301
ชื่อโดเมน |
โฮสติ้ง เซิร์ฟเวอร์ |
ตำแหน่งรหัสเปลี่ยนเส้นทาง |
---|---|---|
ไม่เปลี่ยนแปลง | ไม่เปลี่ยนแปลง | หน้าเก่าบนเซิร์ฟเวอร์เดียวกัน |
ไม่เปลี่ยนแปลง | เปลี่ยน | หน้าเก่าบนเซิร์ฟเวอร์ใหม่ |
เปลี่ยน | ไม่เปลี่ยนแปลง | หน้าเก่าบนเซิร์ฟเวอร์เดียวกัน |
เปลี่ยน | เปลี่ยน | หน้าเก่าบนเซิร์ฟเวอร์เก่า |
* เฉพาะกับ.htaccess redirect: เพิ่ม redirect code ไปที่ ไฟล์httpd.conf หรือ.htaccess
รหัสสถานะ | ชื่อรหัสสถานะ | คำอธิบาย |
---|---|---|
200 | ตกลง | คำขอ HTTP สำเร็จ |
300 | หลายทางเลือก | |
301 | ย้ายอย่างถาวร | การเปลี่ยนเส้นทาง URL แบบถาวร |
302 | พบ | การเปลี่ยนเส้นทาง URL ชั่วคราว |
303 | ดูอื่นๆ | |
304 | ไม่ดัดแปลง | |
305 | ใช้พร็อกซี | |
307 | เปลี่ยนเส้นทางชั่วคราว | |
404 | ไม่พบ | ไม่พบ URL |
รหัสสถานะHTTP 301 ย้ายอย่างถาวร หมายถึงการเปลี่ยนเส้นทาง URL แบบถาวร
การเปลี่ยนเส้นทาง 301 เป็นวิธีที่นิยมในการเปลี่ยนเส้นทาง URL เนื่องจากเป็นการแจ้งเครื่องมือค้นหาว่า URL ได้ย้ายไปแล้ว และเครื่องมือค้นหาควรใส่หน้า URL ใหม่ในผลการค้นหาแทนหน้า URL เก่า และโอนหน้า URL ใหม่ อันดับหน้าของหน้า URL เก่า
การเปลี่ยนเส้นทาง 301 สามารถทำได้ข้ามโดเมนหรือในโดเมนเดียวกัน
Google แนะนำให้ใช้การเปลี่ยนเส้นทาง 301
สคริปต์เปลี่ยนเส้นทาง | ด้านเปลี่ยนเส้นทาง | ประเภทไฟล์หน้าเก่า | เปลี่ยนเส้นทาง URL หรือโดเมน | ประเภทเซิร์ฟเวอร์ URL เก่า | รองรับการเปลี่ยนเส้นทาง 301 |
---|---|---|---|---|---|
พี.เอช.พี | ฝั่งเซิร์ฟเวอร์ | .php | URL | อาปาเช่/ลินุกซ์ | ใช่ |
งูเห่า | ฝั่งเซิร์ฟเวอร์ | .งูเห่า | URL | IIS / วินโดวส์ | ใช่ |
ASP.NET | ฝั่งเซิร์ฟเวอร์ | .aspx | URL | IIS / วินโดวส์ | ใช่ |
.htaccess | ฝั่งเซิร์ฟเวอร์ | ทั้งหมด | URL / โดเมน | อาปาเช่/ลินุกซ์ | ใช่ |
ไอ.ไอ.เอส | ฝั่งเซิร์ฟเวอร์ | ทั้งหมด | URL / โดเมน | IIS / วินโดวส์ | ใช่ |
แท็กลิงก์มาตรฐาน HTML | ด้านลูกค้า | .html | URL | ทั้งหมด | เลขที่ |
การรีเฟรชเมตา HTML | ด้านลูกค้า | .html | URL | ทั้งหมด | เลขที่ |
เฟรม HTML | ด้านลูกค้า | .html | URL | ทั้งหมด | เลขที่ |
จาวาสคริปต์ | ด้านลูกค้า | .html | URL | ทั้งหมด | เลขที่ |
jQuery | ด้านลูกค้า | .html | URL | ทั้งหมด | เลขที่ |
สคริปต์เปลี่ยนเส้นทาง - ภาษาสคริปต์ที่ใช้สำหรับการเปลี่ยนเส้นทาง
ด้านการเปลี่ยนเส้นทาง - ที่ซึ่งการเปลี่ยนเส้นทางเกิดขึ้น - ฝั่งเซิร์ฟเวอร์หรือฝั่งไคลเอ็นต์
ประเภทไฟล์หน้าเก่า - ประเภทของหน้า URL เก่าที่สามารถมีภาษาสคริปต์ของรหัสเปลี่ยนเส้นทางได้
เปลี่ยนเส้นทาง URL หรือโดเมน - รองรับการ เปลี่ยนเส้นทาง URLของหน้าเว็บเดียวหรือ เปลี่ยนเส้นทาง โดเมนของทั้งเว็บไซต์
ประเภทเซิร์ฟเวอร์ URL เก่าทั่วไป - ซอฟต์แวร์และระบบปฏิบัติการทั่วไปของเซิร์ฟเวอร์
รองรับการเปลี่ยนเส้นทาง 301 - ระบุว่าสามารถส่งคืนการตอบกลับสถานะการเปลี่ยนเส้นทาง 301 แบบถาวรได้หรือไม่
แทนที่โค้ด old-page.php ด้วยโค้ดเปลี่ยนเส้นทางเป็น new-page.php
old_page.php:
<?php
// PHP permanent URL redirection
header("Location: http://www.mydomain.com/new-page.php", true,
301);
exit();
?>
เพจเก่าต้องมีนามสกุลไฟล์ .php
หน้าใหม่สามารถมีนามสกุลใดก็ได้
ไฟล์ .htaccessเป็นไฟล์การกำหนดค่าในเครื่องของเซิร์ฟเวอร์ Apache
หากคุณได้รับอนุญาตให้เปลี่ยนไฟล์ httpd.conf คุณควรเพิ่มคำสั่ง Redirect ใน httpd.conf แทนไฟล์ . htaccess
เปลี่ยนเส้นทางถาวรจาก old-page.html ไปยัง new-page.html
.htaccess:
Redirect 301 /old-page.html http://www.mydomain.com/new-page.html
เปลี่ยนเส้นทางถาวรจากหน้าโดเมนทั้งหมดไปที่ newdomain.com
ไฟล์ .htaccessควรอยู่ที่ไดเรกทอรีรากของเว็บไซต์เก่า
.htaccess:
Redirect 301 / http://www.newdomain.com/
ดู: การเปลี่ยนเส้นทาง .htaccess
old-page.asp:
<%@ Language="VBScript" %>
<%
' ASP permanent URL redirection
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.mydomain.com/new-page.html"
Response.End
%>
old-page.aspx:
<script language="C#" runat="server">
// ASP.net permanent URL redirection
private void Page_Load(object sender, EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.mydomain.com/new-page.html");
Response.End();
}
</script>
การเปลี่ยนเส้นทางแท็กการรีเฟรชเมตา HTML จะไม่ส่งคืนรหัสสถานะการเปลี่ยนเส้นทางถาวร 301 แต่ Google พิจารณาว่าเป็นการเปลี่ยนเส้นทาง 301
แทนที่หน้าเก่าด้วยรหัสเปลี่ยนเส้นทางด้วย URL ของหน้าที่คุณต้องการเปลี่ยนเส้นทาง
old-page.html:
<!-- HTML meta refresh URL redirection -->
<html>
<head>
<meta http-equiv="refresh"
content="0; url=http://www.mydomain.com/new-page.html">
</head>
<body>
<p>The page has moved to:
<a href="http://www.mydomain.com/new-page.html">this
page</a></p>
</body>
</html>
การเปลี่ยนเส้นทาง Javascript ไม่ส่งคืนรหัสสถานะการเปลี่ยนเส้นทางถาวร 301
แทนที่หน้าเก่าด้วยรหัสเปลี่ยนเส้นทางด้วย URL ของหน้าที่คุณต้องการเปลี่ยนเส้นทาง
old-page.html:
<html>
<body>
<script type="text/javascript">
// Javascript URL redirection
window.location.replace("http://www.mydomain.com/new-page.html");
</script>
</body>
</html>
ดู: การเปลี่ยนเส้นทาง Javascript
การเปลี่ยนเส้นทาง jQuery เป็นการเปลี่ยนเส้นทาง Javascript อีกประเภทหนึ่ง
การเปลี่ยนเส้นทาง jQuery ไม่ส่งคืนรหัสสถานะการเปลี่ยนเส้นทางถาวร 301
แทนที่หน้าเก่าด้วยรหัสเปลี่ยนเส้นทางด้วย URL ของหน้าที่คุณต้องการเปลี่ยนเส้นทาง
old-page.html:
<!DOCTYPE html>
<html>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
//
jQuery URL redirection
$(document).ready( function() {
url = "http://www.mydomain.com/new-page.html";
$( location ).attr("href",
url);
});
</script>
</body>
</html>
See: jQuery redirection
The canonical link does not redirect to the preffred URL, but it can be an alternative to URL redirection for websites that most of the traffic arrives from search engines.
สามารถใช้แท็กลิงก์มาตรฐาน HTML เมื่อมีหลายหน้าที่มีเนื้อหาคล้ายกัน และคุณต้องการบอกเครื่องมือค้นหาว่าคุณต้องการใช้หน้าใดในผลการค้นหา
แท็กลิงก์ Canonical สามารถลิงก์ไปยังโดเมนเดียวกันและข้ามโดเมนได้ด้วย
เพิ่มแท็กลิงก์ตามรูปแบบบัญญัติในหน้าเก่าเพื่อลิงก์ไปยังหน้าใหม่
เพิ่มแท็กลิงก์ตามรูปแบบบัญญัติไปยังหน้าเว็บที่คุณไม่ต้องการให้เครื่องมือค้นหาเชื่อมโยงไปยังหน้าที่ต้องการ
ควรเพิ่มแท็กลิงก์มาตรฐานในส่วน <head>
old-page.html:
<link rel="canonical" href="http://www.mydomain.com/new-page.html">
ในการเปลี่ยนเส้นทางเฟรม ไฟล์ new-page.html จะถูกดูโดยเฟรม html
นี่ไม่ใช่การเปลี่ยนเส้นทาง URL จริง
การเปลี่ยนเส้นทางเฟรมไม่ใช่เครื่องมือค้นหาที่เป็นมิตรและไม่แนะนำ
old-page.html:
<!-- HTML frame redirection -->
<html>
<head>
<title>Title of new page</title>
</head>
<frameset cols="100%">
<frame src="http://www.mydomain.com/new-page.html">
<noframes>
<a href="http://www.mydomain.com/new-page.html">Link
to new page</a>
</noframes>
</frameset>
</html>
301 ตัวสร้างการเปลี่ยนเส้นทาง ►
Advertising