Phía SERVER
Đối với PHP, nếu chỉ
sử dụng PHP cú pháp gởi header bằng cách dùng header(“location: some_url”) thì
chỉ tạo được header có status code là 302(Found) chứ không phải 301(Moved
Permanently), do đó muốn nhận được status code 301 ở phía trình duyệt thì bạn cần
phải gởi thêm status code trước khi gởi location.
Ngôn ngữ PHP
<?
Header(
"HTTP/1.1 301 Moved Permanently" );
Header(
"Location: http://www.new-url.com" );
?>
-----------------------------------------------------------------------
ColdFusion Redirect
<.cfheader statuscode="301" statustext="Moved permanently">
<.cfheader name="Location" value="http://www.new-url.com">
-----------------------------------------------------------------------
ASP Redirect
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://www.new-url.com/"
%>
----------------------------------------------------------------------
ASP .NET Redirect
<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>
-----------------------------------------------------------------------
JSP (Java) Redirect
<%
response.setStatus(301);
response.setHeader( "Location", "http://www.new-url.com/" );
response.setHeader( "Connection", "close" );
%>
----------------------------------------------------------------------
CGI PERL Redirect
$q = new CGI;
print $q->redirect("http://www.new-url.com/");
----------------------------------------------------------------------
Ruby on Rails Redirect
def old_action
headers["Status"] = "301 Moved Permanently"
redirect_to "http://www.new-url.com/"
end
------------------------------------------------------------------------
.htaccess
redirect 301 /old/oldURL.com http://www.newURL.com
Phía Client
Dùng thẻ META
<meta http-equiv="refresh" content="5;url=http://www.lophocvitinh.com"/>
Dùng Javascript
Dùng hàm window.location = “đường dẫn trang web”
<html>
<head>
<script type="text/javascript">
var time = 15; //How long (in seconds) to countdown
var page = "http://www.lophocvitinh.com"; //Trang sẽ redirect
function countDown(){
time--;
gett("container").innerHTML = time;
if(time == -1){
window.location = page;
}
}
function gett(id){
if(document.getElementById) return document.getElementById(id);
if(document.all) return document.all.id;
if(document.layers) return document.layers.id;
if(window.opera) return window.opera.id;
}
function init(){
if(gett('container')){
setInterval(countDown, 1000);
gett("container").innerHTML = time;
}
else{
setTimeout(init, 50);
}
}
document.onload = init();
</SCRIPT>
</head>
<body>
<h2>Prepare to be redirected after <span id="container"></span> second(s)!</h2>
</body>
</html>
Kết hợp thẻ META và đếm ngược bằng Javascript
<html>
<head>
<meta http-equiv="refresh" content="5;url=http://www.lophocvitinh.com"/>
<meta charset="utf-8">
<script type="text/javascript">
var time = 5; //thời gian chờ phải khớp với trên thẻ meta tham số content
function countDown(){
time--;
gett("container").innerHTML = time;
}
function gett(id){
if(document.getElementById) return document.getElementById(id);
if(document.all) return document.all.id;
if(document.layers) return document.layers.id;
if(window.opera) return window.opera.id;
}
function init(){
if(gett('container')){
setInterval(countDown, 1000);
gett("container").innerHTML = time;
}
else{
setTimeout(init, 50);
}
}
document.onload = init();
</SCRIPT>
</head>
<body>
<h2>Vui lòng chờ trong <span id="container"></span> giây!</h2>
</body>
</html>
Nếu vẫn chưa hiểu các bạn xem thêm video clip sau:
#drM
Không có nhận xét nào:
Đăng nhận xét