Agentic Inbox là một email client mã nguồn mở (Apache 2.0) chạy hoàn toàn trên Cloudflare Workers, không cần VPS hay máy chủ ảo truyền thống. Kiến trúc serverless tận dụng Durable Objects (SQLite) để cách ly từng mailbox, R2 lưu trữ tệp đính kèm và Email Routing xử lý email đến/đi. Tích hợp sẵn AI agent xây dựng trên Cloudflare Agents SDK và..
Read moreSử dụng Cloudflare WAF tạo 1 rule Truy cập vào Cloudflare -> Security -> WAF -> Create rule -> Edit expression Rule name (required): đặt 1 tên tùy ý để nhớ If incoming requests match… điền vào (http.request.uri contains “wp-comments-post.php” and http.request.uri.query ne “bdad9e2ef62632b042bdc9b8b1907c87”) Có thể thay bdad9e2ef62632b042bdc9b8b1907c87 bằng 1 dãy số khác tùy ý cho riêng bạn Then..
Read moreNó hoạt động như một hệ thống fail-over tự động (chuyển hướng khi lỗi), giúp duy trì dịch vụ khi server chính gặp sự cố mà không cần dùng load balancer phức tạp. Tự động kiểm tra trạng thái website. Nếu thấy DOWN, kiểm tra lại 3 lần để tránh cảnh báo sai. Cập nhật Page..
Read moreDo Cloudflare Workers giới hạn subrequests 50/request ở tài khoản miễn phí, gọi WP-Cron 1 giây 1 lần sẽ bị thiếu đi 10 lần, dùng thực tế mình thấy ~5s gọi 1 lần WP-Cron đã đủ hiệu quả rồi, 1s chạy 1 lần WP-Cron đôi khi server load không kịp luôn ấy Workers & Pages -> Create..
Read moreReleem là công cụ tự động tối ưu hóa cấu hình MySQL/MariaDB, nó thu thập số liệu từ database, phân tích và đưa ra cấu hình tối ưu theo khối lượng công việc thực tế của trang. Về mặt lý thuyết, nó sẽ tối ưu hơn nhiều so với cách bạn dùng 1 số cấu hình MySQL/MariaDB..
Read moreMới đây, WordPress Performance Team vừa ra mắt một plugin tối ưu cho mọi website WordPress mang tên Speculative Loading sử dụng công nghệ Speculation Rules API trên trình duyệt, giúp website có thể tiết kiệm tài nguyên nhờ vào việc tải nhanh hơn khi liên kết được rê chuột sẽ tải trước vào bộ nhớ tạm của trình..
Read morelink: https://github.com/SatelliteWP/rocket-nginx?tab=readme-ov-file#installation trong trường hợp bạn có cài HSTS thì cần sửa lại file default.conf của Rocket-Nginx, vì họ tạo giá trị # HSTS không đúng như hstspreload yêu cầu Mở file default.conf mặc định nằm trong thư mục /usr/local/etc/rocket-nginx/, tầm dòng 32-33 sẽ thấy giá trị # HSTS value, sửa lại như bên dưới rồi reload lại nginx là được # HSTS value..
Read morePlugin này về cơ bản sẽ tạo chỉ mục cho các bảng trong cơ sở dữ liệu, giúp truy vấn tìm kiếm dữ liệu nhanh hơn. Trước khi cài và kích hoạt, để đảm bảo, bạn cần sao lưu cơ sở dữ liệu trước nhé. Sau khi đã chắc chắn, cài và kích hoạt plugin..
Read moreInstall Navidrome using Docker Compose I installed Navidrome using Docker Compose. Simply point the volume to where your music is and run the install. compose.yaml services: navidrome_WFZy: image: deluan/navidrome:${VERSION} # container_name: ${CONTAINER_NAME} deploy: resources: limits: cpus: ${CPUS} memory: ${MEMORY_LIMIT} restart: unless-stopped user: 1000:1000 environment: ND_SCANSCHEDULE: 1h ND_LOGLEVEL: info ND_SESSIONTIMEOUT: 24h ND_BASEURL: “” ports: – ${HOST_IP}:${WEB_HTTP_PORT}:4533..
Read morekhi đặt hàng Woocommerce bạn sẽ thấy quay hơi lâu hoặc khá lâu đây là một trường hợp, bài viết này sẽ giúp bạn tăng tốc cho những thao tác này cực kỳ nhanh luôn Bài này viết thiên về kỹ thuật và code một chút xíu nhưng nếu bạn là người dùng bình thường..
Read moreCode mẫu <link rel=”stylesheet” type=”text/css” href=”https://cdn.datatables.net/v/dt/dt-1.10.25/datatables.min.css”/> <script type=”text/javascript” src=”https://code.jquery.com/jquery-3.5.1.js”></script> <script type=”text/javascript” src=”https://cdn.datatables.net/v/dt/dt-1.10.25/datatables.min.js”></script> <script type=”text/javascript” src=”https://cdn.datatables.net/1.10.25/css/jquery.dataTables.min.css”></script> <script> $(document).ready(function() { $(‘#table’).DataTable( { stateSave: true, “order”: [[ 0, “asc” ]], “lengthMenu”: [[15, 30, 50, 100, 500, 1000, -1], [15, 30, 50, 100, 500, 1000, “All”]], “language”: { “url”: “//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Vietnamese.json” } } ); } ); </script> <center> <table border=1..
Read moreVí dụ kết nối api KiotViet // lấy token và cache token function getKiotVietToken(clientId, secretKey) { var cache = CacheService.getScriptCache(); var cacheKey = “kiotVietToken”; var cachedToken = cache.get(cacheKey); if (cachedToken != null) { return cachedToken; } var payload = { scopes: “PublicApi.Access”, grant_type: “client_credentials”, client_id: clientId, client_secret: secretKey, muteHttpExceptions: true }; var options = {..
Read more//////Code mẫu tìm tên file trong bảng div ul <script> function quicksearch() { // Declare variables var input, filter, ul, li, i, txtValue; input = document.getElementById(“formquicksearch”); filter = input.value.toUpperCase(); ul = document.getElementById(“formsearch”); li = ul.getElementsByTagName(“li”); // Loop through all list items, and hide those that don’t match the search query for (i = 0; i..
Read moreĐể cài đặt auto-py-to-exe, yêu cầu cơ bản là chúng ta phải cài đặt Python và pip trên máy dành cho nhà phát triển. Để cài đặt, chúng ta sẽ phải thực hiện lệnh pip install auto-py-to-exe trên command-line. Sau khi cài đặt xong, chúng ta có thể chạy trực tiếp auto-py-to-exe từ chính dòng lệnh và xem kết quả đầu..
Read moreKhi dùng các phần mềm để quét lỗ hổng bảo mật, thường sẽ không qua được tường lừa WAF, chỉ cần gửi request đầu tiên lên là bị chặn, kể cả crawl. Bạn có thể bypass WAF bằng cách thay đổi Header của gói tin bằng 1 trong các Header dưới đây. Tùy mỗi Tool..
Read moreTrong quá trình phát triển website bằng WordPress cho công ty, mình vô tình phát hiện ra rằng WordPress, và một số plugins thực hiện việc gửi các yêu cầu (HTTP Request) ra bên ngoài khi bạn thực hiện việc tải (load) trang. Các yêu cầu này khiến website trở nên chậm chạp, đặc biệt là trong..
Read more