Loading
Hãy tìm kiếm trước khi đặt câu hỏi đến các chuyên gia tại Diễn đàn SEO - Quảng Bá Web

Chú ý: thành viên mới tham gia (chưa đủ 30 bài) sẽ không đăng được bài mới (thảo luận được chấp nhận toàn bộ) trong những Box không thuộc về SEO - Digital Marketing (vd: Giao lưu, Quảng cáo v.v.. do không có đóng góp cho anh em SEOer mà toàn Spam bài quảng cáo v.v..)
  • Diễn đàn Quảng bá web - Thông báo khẩn

    1.  

    + Trả Lời Ðề Tài
    kết quả từ 1 tới 4 trên 4
    1. #1
      Tham gia ngày
      Jul 2013
      Đến từ
      TP.HCM
      Bài gởi
      77
      Thanks
      74
      Thanked 47 Times in 12 Posts

      Post htaccess và Redirect 301 trong PHP, ASP, JAVA

      htaccess là một tệp tin cấu hình đặc biệt, htaccess cho phép bạn thay đổi cách hoạt động của máy chủ Apache ở tầng thư mục. Tệp tin htaccess gồm các dòng lệnh, có thể tùy biến theo người dùng, được đặt trong một thư mục nào đó, nó sẽ có tác dụng cho thư mục đó và tất cả các thư mục con. Một trong những ứng dụng phổ biến của htaccess là cho phép viết lại đường dẫn URL (rewrite URL).
      Trở lại ứng dụng SEO của htaccess, khi một khách hay bọ tìm kiếm thăm một trang web, máy chủ sẽ kiểm tra tệp tin đặt biệt để tìm các tùy biến của webmaster, bao gồm cả các tùy biến bảo mật. Máy chủ sau đó sẽ thực thi các lệnh tìm thấy trong tệp tin htaccess thường gồm chuyển hướng redirection, bảo mật và báo lỗi.


      Redirect 301 là gì ?
      Chuyển hướng redirect 301 hay redirection 301 thường được hiểu như việc di rời vĩnh viễn (moved permanently). Nó trả về mã lỗi 301 trong phần header nhằm thông báo cho máy tìm kiếm hay trình duyệt, máy chủ rằng trang web hiện tại đã được chuyển rời tới địa chỉ mới.
      Cài đặt redirect 301
      Điều đầu tiên là bạn phải đảm bào chắc server Apache của bạn hỗ trợ mod_rewrite cho phép sử dụng .htaccess để áp dụng redirect 301 . Sau đó bạn phải tải tệp tin .htaccess từ thư mục gốc chứa các trang web của bạn. Nếu như bạn không có tệp tin .htaccess trong thư mục gốc thì bạn phải tạo nó với trình soạn thảo text như Notepad, Ultraedit hay EditPadPro, v.v. Phải chắc chắn rằng bạn viết đúng tên và có dấu chấm “.” đầu tệp tin.
      Người sử dụng Windows sẽ không thể tạo được tệp tin .htaccess vì tệp tin đặc biệt này không chứa tên, nó chỉ chứa tên của phần tên mở rộng. Vì thế bạn hãy tải tệp tin text bất kỳ trong window rồi tải lên server qua FTP rồi đổi tên trên sever.
      Sau khi tải tệp tin .htaccess xuống máy, nếu đã có các dòng lệnh trước đó thì hãy cẩn thận đừng thay đổi nếu như bạn không chắc, tốt nhất hãy sao lưu một bản để phòng trường hợp cần thiết bạn vẫn có thể quay trở lại.
      Cài đặt cơ bản
      Dòng lệnh bắt đầu .htaccess
      Dòng lệnh .htaccess của bạn nên bắt đầu như sau :
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /

      Dòng lệnh cơ bản redirect 301
      Dòng lệnh redirect 301 về cơ bản có dạng như sau trong tệp tin .htaccess :
      redirect 301 /old/old.htm http://keduatin.com/forums/may-tinh-laptop.html
      Dòng lệnh trên thông báo chuyển rời tệp tin old.htm trong thư mục old đến vị trí mới tại http://www.keduatin.com/forums/may-tinh-laptop.html
      Chú ý : Để bắt đầu thì bạn nên redirect 301 các trang trên cũng host, bạn chỉ nên chuyển các trang cũ đến thư mục gốc tương đối. Có thể thực hiện việc này bằng việc loại bỏ “http://www.keduatin.com/forums/may-tinh-laptop.html” mà chỉ thêm đường dẫn tương đối đến thư mục gốc.
      Điểm mạnh nhât của việc thay đổi hàng loạt đường dẫn URL chính là mod_rewrite của Apache, đặc biệt là khi thay đổi tên miền hay thư mục
      hay số lượng lớn các tập tin. Chúng ta hãy tìm hiểu phần tiếp theo.
      Chuyển toàn bộ đến tên miền mới
      Nếu bạn quyết định thay đổi tên miền thì các đường dẫn trước đây từ các website bên ngoài, từ máy tìm kiếm và ngay cả các đường dẫn tuyệt đối trên website cũ đều bị thay đổi và khi bạn truy cập, các địa chỉ trên sẽ trỏ bạn đến trang báo lỗi 404 : trang không tìm thấy.
      Vì thế nếu bạn thay đổi tên miền thì đừng để mất các liên kết quí báu và người dùng tiềm năng từ máy tìm kiếm, hãy redirect các liên kết cũ tới tên miền mới :
      Options +FollowSymLinks
      RewriteEngine on
      RewriteRule (.*) http://www.keduatin.com/ [R=301,L]

      Hãy thay đổi www.keduatin.com/ bằng tên miền mới của bạn.
      Redirect toàn bộ trang trong một thư mục đến mọt trang mới
      Giả sử như bạn không còn sử dụng thư mục “thuvienthietke” nữa và muốn chuyển tất cả các trang trong thư mục này đến trang “keduatin.php” thì hãy thêm dòng lệnh sau vào tệp tin .htaccess nằm tại thư mục gốc :



      RewriteRule ^thuvienthietke(.*)$ /thuvienweb.php [L,R=301]

      Chuyển các trang động tới một trang mới
      Để chuyến trang web động page.php?id=n (với n là giá trị biến) tới một trang tĩnh mới new-page.html thì bạn có thể làm như sau :
      RewriteRule ^page.php?id=(.*)$ /new-page.htm [L,R=301]

      URL với www hay không www
      Đôi khi các bạn bắt gặp việc website sử dụng “www” trong URL (Ví dụ như http://keduatin.com), trong khi có những website lại không dùng “www” này như http://aevn.fr. Nên nhớ rằng “tương ứng” với dịch vụ Web. Các bạn có thể lựa chọn riêng cho mình. Nhưng không thể chọn cả hai vì sẽ gây ra trùng lặp nội dung. sau đây là hai ví dụ, hướng dẫn bạn xủ lý triệt để vấn đề này.
      Trường hợp sử dụng www
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /
      RewriteCond %{HTTP_HOST} !^www\.keduatin.com\.com$ [NC]
      RewriteRule ^(.*)$ http://www.keduatin.com/ [R=301,L]

      Ngoài ra còn có cách viết sau có thể áp dụng cho tất cả các host và domain, không phải edit lại :
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /
      RewriteCond %{HTTP_HOST} !^www\.[a-z-]+\.[a-z]{2,6} [NC]
      RewriteCond %{HTTP_HOST} ([a-z-]+\.[a-z]{2,6})$ [NC]
      RewriteRule ^/(.*)$ http://%1/ [R=301,L]

      Trường hợp không sử dụng www
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /
      RewriteCond %{HTTP_HOST} !^aevn\.fr$ [NC]
      RewriteRule ^(.*)$ http://aevn.fr/ [R=301,L]

      Bạn có thể thử lại với các tên miền ví dụ trên mà tớ áp dụng thành công đúng như trích dẫn.
      Loại bỏ Query_String
      Đôi khi một trang web của bạn có thể hiển thị hai đường dẫn url khác nhưng ( cùng một nội dung) ví dụ thuvienweb.php và thuvienweb.php?v=joomla. Tương tự như phần trên, điều này sẽ tạp ra nội dung trùng lặp trên website của bạn. Vì vậy bạn có thể loại bỏ các tham biến như sau :
      RewriteCond %{THE_REQUEST} ^GET\ /.*\;.*\ HTTP/
      RewriteCond %{QUERY_STRING} !^$
      RewriteRule .* http://www.keduatin.com.com%{REQUEST_URI}? [R=301,L]

      Ngoài ra nếu như tham biến QUERY_STRING không được gấn giá trị nào hết và URl kết thúc bởi biến rỗng “?”, thì bạn nên loại bỏ chúng, ví dụ “index.php?” :
      RewriteEngine On
      RewriteBase /
      RewriteCond %{QUERY_STRING} .
      RewriteRule ^index.php /index.php? [L]

      Chuyển phần đuôi mở rộng từ .php sang .html
      Việc chuyển .php sang .html có tác dụng khi bạn cần viết lại đường dẫn thân thiện với máy tìm kiếm (Friendly URL for SEO).
      RewriteRule ^(.*)\.html$ .php [R=301,L]

      Chuyển gạch dưới (_) thành gạch ngang(-)
      Dù Google mới chấp nhận việc sử dụng gạch dưới “_” như là ký tự ngăn cách, nhưng trong thực tế người dùng vẫn quen thuộc với dấu gạch ngang “-”. Bản thân thuvienwebmaster cũng ủng hộ dấu gạch ngang vì nó dễ nhìn hơn. Bạn có thể chuyển đổi toàn bộ dấu “_” sang “-” như sau :
      Options +FollowSymLinks
      RewriteEngine On
      RewriteBase /

      RewriteRule !\.(html|php)$ - [S=4]
      RewriteRule ^([^_]*)_([^_]*)_([^_]*)_([^_]*)_(.*)$ ---- [E=uscor:Yes]
      RewriteRule ^([^_]*)_([^_]*)_([^_]*)_(.*)$ --- [E=uscor:Yes]
      RewriteRule ^([^_]*)_([^_]*)_(.*)$ -- [E=uscor:Yes]
      RewriteRule ^([^_]*)_(.*)$ - [E=uscor:Yes]

      RewriteCond %{ENV:uscor} ^Yes$
      RewriteRule (.*) http://www.keduatin.com.com/ [R=301,L]

      Redirect Wordpress Feeds tới Feedburner
      Trong bài viết sử dụng Feedbuner, các bạn có thể sử dụng plugin để quản lý Feeds RSS trên Blog Wordpress. Nếu không các bạn có thể sử dụng code htaccess sau :
      RewriteEngine On
      RewriteBase /
      RewriteCond %{REQUEST_URI} ^/feed\.gif$
      RewriteRule .* - [L]

      RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC]
      RewriteRule ^feed/?.*$ http://keduatin.com/forums/computer/ [L,R=302]

      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]

      Đối với người dùng WordPress, các bạn có thể sử dụng plug-in Redirection Permanent Link để chuyến hướng các trang.
      Bào vệ ăn cắp tài nguyên và băng thông
      Đôi khi các tài liệu, film hay hình ảnh mà bạn tải trên host của mình bị người khác dùng và đăng trên website khác sẽ gây tốn băng thông, bạn có thể hạn chế việc ăn cắp bằng cách chỉ cho phép các tài nguyên trên tiếp cận trên những website bạn cho phép như sau (Nếu không sẽ trả về thư mục /feed/) :
      RewriteEngine On
      RewriteBase /
      RewriteCond %{HTTP_REFERER} !^$
      RewriteCond %{HTTP_REFERER} !^http://(www\.)?keduatin.com.com/.*$ [NC]
      RewriteRule \.(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]

      Ứng dụng redirect 301 trên các máy chủ khác (ngoài Apache)
      IIS redirect
      Trong phần quản trị dịch vụ internet, nhấn phải chuột chọn tệp tin và thư mục mà bạn muốn áp dụng redirect;
      Chon nút “a redirection to a URL”;
      Chọn trang Redirection;
      Chon tiếp “The exact url entered above” và “A permanent redirection for this resource”;
      Chon “Apply”.
      ColdFusion Redirect
      <.cfheader statuscode="301" statustext="Moved permanently">
      <.cfheader name="Location" value="http://www.keduatin.com">

      PHP Redirect
      <?
      Header( "HTTP/1.1 301 Moved Permanently" );
      Header( "Location: http://www.keduatin.com" );
      ?>{xtypo_code}

      ASP Redirec
      {xtypo_code}<%@ Language=VBScript %>
      <%
      Response.Status="301 Moved Permanently"
      Response.AddHeader "Location","http://www.keduatin.com/"
      %>
      ASP .org Redirect
      <script runat="server">
      private void Page_Load(object sender, System.EventArgs e)
      {
      Response.Status = "301 Moved Permanently";
      Response.AddHeader("Location","http://www.keduatin.com/");
      }
      </script>

      JSP (Java) Redirect
      <%
      response.setStatus(301);
      response.setHeader( "Location", "http://www.keduatin.com" );
      response.setHeader( "Connection", "close" );
      %>

      CGI PERL Redirect
      $q = new CGI;
      print $q->redirect("http://www.keduatin.com/");

      Ruby on Rails Redirect
      def old_action
      headers["Status"] = "301 Moved Permanently"
      redirect_to "http://www.keduatin.com/"
      end



       Xem bài liên quan cùng danh mục:



      Chữ ký của cuong19xx
      Em seo từ khóa độc nhất vô nhị nè mấy bác: những câu chuyện tình hay nhất

      ****************Hãy cùng chia sẻ với bạn bè bằng cách****************

      Copy đường link dưới đây gửi đến bạn bè!

      Đặt từ khóa tại đây ? Xem bảng giá quảng cáo tại QBW

    2. Những thành viên cảm ơn đến cuong19xx vì bài đăng rất có ích:

      huymp (16-08-2013)

    3. #2
      Tham gia ngày
      Aug 2013
      Bài gởi
      6
      Thanks
      2
      Thanked 0 Times in 0 Posts

      Ðề: htaccess và Redirect 301 trong PHP, ASP, JAVA

      Mình đang học SEO . Bài viết của bạn rất hữu ích .Cám ơn rất nhiều .


      Chữ ký của mrhot

    4. #3
      Tham gia ngày
      Aug 2013
      Bài gởi
      4
      Thanks
      0
      Thanked 0 Times in 0 Posts

      Ðề: htaccess và Redirect 301 trong PHP, ASP, JAVA

      Mình đang học về htaccess, cảm ơn bài viết của bạn. Rảnh ghé thăm đồ án của mình nhé lau hai san ngon


      Chữ ký của Anhnhat

    5. #4
      Tham gia ngày
      Apr 2014
      Bài gởi
      35
      Thanks
      0
      Thanked 0 Times in 0 Posts

      Ðề: htaccess và Redirect 301 trong PHP, ASP, JAVA

      bài viết rất chi tiết , xin được cảm ơn bác thớt ạ


      Chữ ký của tnthanh208



    + Trả Lời Ðề Tài

    Chủ đề giống nhau

    1. .htaccess và redirect 301
      By seo in forum Htaccess - URL Rewrite
      Trả lời: 40
      Bài mới gởi: 26-04-2016, 01:27 PM
    2. Hỏi về 301 redirect bằng htaccess ?
      By webgiarehn in forum Htaccess - URL Rewrite
      Trả lời: 9
      Bài mới gởi: 04-03-2015, 04:29 PM
    3. Trả lời: 6
      Bài mới gởi: 16-06-2014, 10:10 PM
    4. Htaccess-java web
      By aoden in forum Htaccess - URL Rewrite
      Trả lời: 0
      Bài mới gởi: 24-07-2013, 08:31 AM
    5. Cách lấy PR bằng redirect trong htaccess!
      By kingmagicl in forum Thảo luận khác
      Trả lời: 7
      Bài mới gởi: 01-08-2012, 09:33 AM

    Tags for this Thread

    Quuyền Hạn Của Bạn

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts

    Có thể bạn cần: 
    Hội công nghệDMCA.comQuangBaWeb.edu.vn là diễn đàn mở miễn phí dành cho các thành viên.
    Chúng tôi không chịu trách nhiệm trên thông tin người dùng đăng tải trên diễn đàn. Các trường hợp vi phạm, chúng tôi sẽ tiến hành xử lý xóa bỏ ngay lập tức. Nếu bạn nhận thấy bài viết vi phạm, xin vui lòng gởi thông báo cho chúng tôi, xin cám ơn.

    DÀNH CHO QUẢNG CÁO