CHIASE123.COM - Diễn đàn chia sẻ kiến thức

Diễn đàn chia sẻ kiến thức
Thứ Sáu, 18:59:50 - 22/11/2024

Thời gian được tính theo giờ UTC + 7 Giờ




Tạo chủ đề mới Gửi bài trả lời  [ 1 bài viết ] 
Người gửi Nội dung
Gửi bàiĐã gửi: 06/06/2016 16:07 
Ngoại tuyến
☀️2/30☀️
☀️2/30☀️
Hình đại diện của thành viên

Ngày tham gia: 08/03/2012 10:56
Bài viết: 15
Đến từ: Hà Giang
Thiết bị: Nokia N96
Số điện thoại: 0367790762
Tốc độ luôn luôn là vấn đề sống còn cho một website, bạn thử tưởng tượng xem, nếu bạn viếng thăm một trang web hay blog nào đó, mà thời gian load trang rất lâu thì ắt hẳn là bạn sẽ chẳng còn muốn quay lại website hay blog đó nữa. Có rất nhiều cách để cải thiện tốc độ load trang web, và một trong số đó là tạo cache.

Cache website giúp bạn cải thiện tốc độ load trang web, giảm tải cpu, ram và process của hosting, vps, server, đồng thời giảm truy vấn dữ liệu mysql, qua đó giúp bạn tiết kiệm tài nguyên server đến mức tối đa nhất

Mình sẽ không đi sâu quá nhiều về định nghĩa Cache, trong bài viết này, mình sẽ chia sẻ cho các bạn 3 bước để tạo cache cho trang web bằng PHP.

Hướng dẫn tạo file cache php cho website

Bước 1 : Tạo file top-cache.php

- Các bạn tạo một file mới, và đặt tên cho file này là top-cache.php sau đó copy toàn bộ đoạn code bên dưới và dán (paste) vào nó.

Mã:
<?php
$url 
$_SERVER["SCRIPT_NAME];
$break = Explode('/', $url);
$file = $break[count($break) - 1];
$cachefile = 'cached-'.substr_replace($file ,"",-4).'.html';
$cachetime = 18000;
 
// Serve from the cache if it is younger than 
$cachetime
if (file_exists(
$cachefile) && time() - $cachetime < filemtime($cachefile)) {
    echo "
<!-- Cached copygenerated ".date('H:i', filemtime($cachefile))." -->\n";
    include(
$cachefile);
    exit;
}
ob_start(); // Start the output buffer
?>


- 5 dòng đầu tiên trong đoạn code bên trên sẽ tạo tên cho file cache dựa vào tên php hiện tại. Giả sử bạn cần tạo cache cho file list.php, thì tên cache file được tạo sẽ là cached-list.html

- Dòng code thứ 6 sẽ tạo một biến $cachetime, biến này sẽ quyết định vòng đời tồn tại của cache tính theo giây. Từ dòng 9 – 13 là dòng điều kiện kiểm tra xem file cache đã được tạo trước đó hay chưa, nếu nó đã tồn tại thì nó sẽ được chèn vào (tại dòng 10) sau đó nó sẽ thoát với câu lệnh exit

Bước 2 : Tạo file bottom-cache.php

- Tương tự như bước 1 , các bạn tạo một file mới và đặt tên là bottom-cache.php, sau đó copy toàn bộ đoạn code sau và dán vào bên trong nó.

Mã:
<?php
// Cache the contents to a file
$cached fopen($cachefile'w');
fwrite($cachedob_get_contents());
fclose($cached);
ob_end_flush(); // Send the output to the browser
?>


- Nếu tên file $cachefile không tìm thấy trên server, thì đoạn code bên trên sẽ được thực thi và nội dung sẽ được ghi vào file $cachefile này. Để lần gọi kế tiếp, thay vì phải thực thi lại toàn bộ file php thì file tĩnh $cachefile sẽ được trả về tại máy người dùng.

Bước 3 : Chèn cache files vào trang của các bạn

- Bây giờ, mỗi khi các bạn cần tạo cache cho trang nào, thì chỉ cần đặt như sau :

Mã:
<?php
 
include('top-cache.php');
 
// PHP code thong thuong dat o day
 
include('bottom-cache.php');
?>


- Bây giờ các bạn có thể áp dụng ngay cache cho những trang có tốc độ load chậm và kiểm tra lại tốc độ cho những lần kế tiếp thử xem. Mình mong là với thủ thuật đơn giản này, sẽ giúp ích cho các bạn.

_________________
Diễn đàn chia sẻ kiến thức máy tính:
KETNOI123.COM

Ấn hiện ra để xem chữ ký của mình:


Sửa lần cuối: nghiammo1992 06/06/2016 16:10

Đầu trang
 Xem thông tin cá nhân Gửi Email  
 
Hiển thị những bài viết cách đây:  Sắp xếp theo  
Tạo chủ đề mới Gửi bài trả lời  [ 1 bài viết ] 

Thời gian được tính theo giờ UTC + 7 Giờ


Chủ đề tương tự
 Chủ đề   Người gửi   Trả lời   Xem   Bài viết mới nhất 
Không có bài viết chưa xem mới nào trong chủ đề này. MySQL Query Cache - Tạo bộ nhớ đệm cache cho MySQL

Weibo

0

380

17/10/2023 04:03

Weibo Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] Chọn một tập tin ngẫu nhiên từ thư mục trong PHP - Select a random file from directory in PHP

HTML

0

326

28/06/2024 17:47

HTML Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] How to check PHP send mail() function - Kiểm tra hàm send mail() php có hoạt động không?

nghiammo1992

0

1037

23/07/2015 00:39

nghiammo1992 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] Code tăng tốc độ load website - Tối ưu hóa seo

nghiammo1992

2

2248

14/12/2013 08:20

Yoonsiyoon Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. Function PHP tự động GET Tiêu đề Website thông qua URL

Vuonghh1998

0

861

23/03/2016 14:29

Vuonghh1998 Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] Hiển thị trình duyệt, địa chỉ IP, quốc gia, hệ điều hành của khách truy cập - Get all client info from website visitors

WordPress

0

655

15/03/2024 02:32

WordPress Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] Hàm var_dump() trong PHP dùng để làm gì?

VOZ

0

323

19/10/2023 14:19

VOZ Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. [PHP] Hàm trim() trong PHP dùng để làm gì?

Shopee

0

333

19/10/2023 20:17

Shopee Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. Code đặt mật khẩu cho file PHP

nghiammo1992

1

1377

11/06/2018 14:52

gameoffline Xem bài viết mới nhất vừa gửi

Không có bài viết chưa xem mới nào trong chủ đề này. Bật/Tắt hiển thị thông báo lỗi trong file php - Hàm error_reporting()

nghiammo1992

0

2688

30/04/2015 13:10

nghiammo1992 Xem bài viết mới nhất vừa gửi

 


Ai đang trực tuyến?

Đang xem chuyên mục này: Không có thành viên nào đang trực tuyến3 khách


Bạn không thể tạo chủ đề mới trong chuyên mục này.
Bạn không thể trả lời bài viết trong chuyên mục này.
Bạn không thể sửa những bài viết của mình trong chuyên mục này.
Bạn không thể xoá những bài viết của mình trong chuyên mục này.

Tìm kiếm với từ khoá:
Chuyển đến:  
Đã tích hợp phpBB® Forum Software © phpBB Group
Vietnamese language pack for phpBB 3.0.x download and support.
CHIASE123.COM - Diễn đàn chia sẻ kiến thức