Tôi đang sử dụng CakePHP với Apache2. Phân tích các trang của tôi bằng công cụ PageSpeed từ Google, tôi tìm thấy hai vấn đề chính. Đầu tiên là tôi nên cho phép gzipping nội dung, thứ hai mà tôi nên tận dụng bộ nhớ đệm của trình duyệt cho các tập tin hình ảnh, javascript và css.Bật tính năng nén Gzip và đặt Thời gian hết hạn của bộ nhớ cache trong CakePHP
Tôi ít nhiều đã tìm thấy cách khắc phục điều này, nhưng nó liên quan đến việc thay đổi tệp .htaccess chính của tôi. Đây không phải là cách thực sự của CakePHP, nếu không có gì vì đó .htaccess là một phần của bản phân phối CakePHP, và tôi phải nhớ giữ nó khi thay đổi phiên bản. Có cách nào tốt hơn để làm điều này?
Đối với người đầu tiên, tôi có thể khắc phục bằng cách đặt
php_value output_buffering On
php_value output_handler ob_gzhandler
Tôi cũng đã cố gắng
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css text/javascript application/x-javascript
</IfModule>
nhưng tôi không thấy bất kỳ kết quả với tốc độ trang.
Đối với phần thứ hai bây giờ tôi sử dụng
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType application/x-javascript A8640000
ExpiresByType text/javascript A8640000
ExpiresByType text/css A8640000
ExpiresByType image/png A8640000
</IfModule>
và nó loại hoạt động, mặc dù tôi vẫn nhận được thông báo "Các nguồn lực cache sau có chu kỳ cập nhật ngắn. Chỉ rõ thời hạn ít nhất một tháng trong tương lai đối với các tài nguyên sau: blah blah "
sử dụng mã này trong AppController public function beforeRender() { \t \t $ this-> response-> nén() sau đây; \t} – Meer