Góc độ cá nhân, mình thích nhất 1 hệ thống comment viết thông qua Cloudflare Workers, nó miễn phí 100.000 request mỗi ngày, database Cloudflare cũng hỗ trợ miễn phí tầm 1GB (1000 comment trung bình khoảng 1MB trong database), rất thừa với nhu cầu của các trang blog nhỏ, trong trường hợp trang phát triển, chỉ chỉ tốn thêm 1 ít chi phí cho Cloudflare Workers
Phần lớn mọi người quan điểm, một Comment Systems, thì end user phải tự quản lý dữ liệu của mình, giao dữ liệu cho 1 bên thứ 3 như Cloudflare thì không an toàn, có lẽ vì thế, trừ demo mình ví dụ ở trên, còn lại không ai viết Comment Systems trên Cloudflare Workers cả
Trong lúc tìm kiếm 1 dịch vụ comment, thay cho comment gốc trên WordPress tình cờ mình biết tới Artalk khi đọc bài viết tại 1 blog nhỏ của 1 thanh niên Trung Quốc, nếu bạn tìm kiếm trực tiếp “Artalk” trên google, các bài viết đa phần sẽ không ra, vì từ khóa này dễ trùng với các trang khác, mình có nghe qua Valine, Waline nhưng không quá thích (cũng là Comment Systems của người Trung Quốc viết ra)
Sau khi trải nghiệm vài ngày cá nhân mình khá hài lòng, Artalk cài đặt và cấu hình rất dễ, tác giả đã viết trang quản trị, cấu hình mọi thứ qua giao diện WEB, hướng dẫn cài đặt khá đầy đủ, và quan trọng, đây là 1 trong rất ít các comment systems dạng Self-Hosted mà có hỗ trợ WordPress
Thường Comment Systems chỉ có ý nghĩa trên các nền tảng không hỗ trợ commnet, kiểu các trang dạng tĩnh …. còn trên WordPress, có sẵn rồi thì dùng hơi làm màu, ưu điểm không bù lại cho khuyết điểm 😀 thực tế 1 số trang WordPress có cả triệu comment, vẫn chạy ầm ầm, nên chuyện bạn đang dùng WordPress thì cứ thoải mái dùng comment gốc như bình thường, không phải quan tâm ba cái Comment Systems này làm gì cho mệt
Trong các trang tại Việt Nam mình biết, chắc chỉ có canhme.com, có lượng tương tác khủng khi có bài mới, may ra mới thấy sự hiệu quả của các hệ thống comment ngoài như này, còn trang mà 1-2 ngày có 1 comment, cài vào thì đúng là quá làm màu :]]
Do mình luôn có ý tưởng sau này sẽ chuyển trang WordPress này về dạng tĩnh, phần vì đang có các VPS miễn phí từ Oracle, nên mới tình hiểu 1 chút về Comment Systems
Dùng thử 1-2 tuần thì mình thấy Artalk có tính năng rất mạnh, nếu không muốn nói là nhiều tính năng nhất trong các sản phẩm mình từng thử qua, hiện tại ở phiên bản mới nhất v2.6.4 vẫn còn 1 số lỗi nhỏ liên quan tới giao diện comment hoặc hiển thị phía quản trị, còn lại phần lớn các tính năng mình đều thấy hoạt động rất tốt
Tính năng
- Giao diện đơn giản, sạch sẽ, kế thừa các font, màu sắc từ theme gốc nên rất dễ phối vào trang của bạn
- Custom các file css, js đơn giản, có thể dùng host chính load các file css,js này, giúp tăng tốc độ load comment, thậm chí tác giả cũng đã làm sẵn 1 rừng các link CDN load 2 file này, dành cho bạn nào thích dùng CDN ngoài
- Có thể set hiện comment mới nhất tới cũ nhất, cũ nhất tới mới nhất …. có thể pin 1 comment cho lên top, như 1 thông báo quan trọng ….
- Database cũng hỗ trợ rất nhiều nền tảng sqlite, mysql, pgsql, mssql, thậm chí bản thân Artalk còn hỗ trợ cả cache và cache warm up luôn (đây là tính năng mà mình nghĩ đúng là chỉ người Trung Quốc mới làm, tại dân họ rất đông, nên ngay từ đầu các thứ liên quan tới chịu tải họ tập trung vào rồi)
- Việc backup, restore siêu nhanh và đơn giản
Có 2 tính năng mà mình rất thích là quản lý theo deep cụ thể và khi comment có tag người comment vào, tình cờ là 2 tính năng này Artalk đều có hỗ trợ, nó giúp cho việc comment dễ theo dõi hơn rất nhiều
- Có thể upload ảnh và lưu trữ trực tiếp lên server của Artalk
- Có thể giới hạn độ cao tối đa cho comment, quản lý theo deep 1 và deep 2, lớn hơn kích thước này sẽ comment được thu gọn lại
- Comment có thể set cho hiện bao nhiêu comment mỗi trang, hoặc hiện toàn bộ ….
- Hỗ trợ Gravatar
- Có thể tùy chỉnh title của admin và user
- Cơ chế captcha rất hiệu quả, hỗ trợ rất nhiều tùy chỉnh nhỏ, có thể dùng Turnstile, reCaptcha, hCaptcha, Geetest để chặn spam
- Hỗ trợ thông báo rất nhiều, qua email, telegram ….
Một điểm liên quan tới vấn đề quản lý backup, restore của Artalk mà mình cực thích, mặc định họ dùng sqlite làm database, nên bạn có thể copy nguyên cái thư mục đó sang 1 server khác là xong, mọi thứ được chuyển đi toàn bộ, từ cấu hình các trang tới database …. siêu nhàn 😀
Tốc độ
Mình không quá quan tâm về tốc độ, vì khi thử nhiều Comment Systems đều thấy tốc độ load trang và khi comment rất nhanh, khi thử trên Artalk ở location US, tốc độ rất khá, chỉ chậm 1 tẹo so với location Singapore
Nếu bạn muốn tốc độ nhanh nhất, có thể cài trực tiếp Artalk trên chính web server chạy WordPress, gần như không thể biết được là đang dùng 1 hệ thống comment ngoài, rất nhanh
Backup và restore
Việc cấu hình backup tự động hàng ngày cũng sẽ khá đơn giản với Rclone
Nói tới đây thì thấy hơn 90% các vấn đề mình gặp phải ở các Comment Systems Artalk đã khắc phục được gần hết
Phàn nàn
Về giao diện, thứ duy nhất mình phàn nàn là form comment, họ làm đơn giản tới mức nhìn vào ngu người luôn
Nickname, Email, Website các border họ để ẩn, nên nhìn trắng nhách 😀 vấn đề giao diện này mình nghĩ ngồi chỉnh sửa lại 1 tẹo chắc cũng khá ổn
Về tính năng thì thứ mình phàn là vấn đề quản lý comment hiện ra
Không hiểu sao các tính năng khác, họ viết chi tiết kinh người, mà phần quản lý comment, thì đơn giản quá, chỉ có 1 tính năng duy nhất là mặc định đồng ý tất cả comment, 2 là admin duyệt tay toàn bộ 😀
Nên làm thêm vài tùy chọn, như 1 người sau khi comment đầu tiên được duyệt, các comment sau của họ sẽ tự được thông qua như trên WordPress thì theo mình hợp lý hơn
Hi vọng các phiên bản sau họ có bổ xung thêm
Cấu hình VPS
Ở bài này mình cài Artalk trên VPS Oracle miễn phí, VM.Standard.E2.1.Micro chạy Ubuntu 22.04, 1 GB RAM
Nếu bạn dùng VPS hãng khác, đã cài docker, docker-compose thì không cần làm bước bên dưới
# update OS sudo apt update && sudo apt upgrade -y # set locale locale-gen en_US.UTF-8 export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8 # Tắt Firewall sudo apt remove iptables-persistent -y sudo ufw disable sudo iptables -F # Chỉnh về múi giờ Việt Nam timedatectl set-timezone Asia/Ho_Chi_Minh # Tạo swap 4GB RAM sudo fallocate -l 4G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile && echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab cat <<EOF > /etc/sysctl.d/99-xs-swappiness.conf vm.swappiness=10 EOF # Enable TCP BBR congestion control cat <<EOF > /etc/sysctl.conf net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr EOF # Cài đặt docker và docker-compose curl -sSL https://get.docker.com | sh sudo usermod -aG docker $(whoami) sudo systemctl start docker sudo systemctl enable docker apt install docker-compose -y # bypass Oralce sudo wget --no-check-certificate https://raw.githubusercontent.com/bibicadotnet/NeverIdle-Oracle/master/VM.Standard.E2.1.Micro.sh -O /usr/local/bin/bypass_oracle.sh chmod +x /usr/local/bin/bypass_oracle.sh nohup /usr/local/bin/bypass_oracle.sh >> ./out 2>&1 <&- & crontab -l > bypass_oracle echo "@reboot nohup /usr/local/bin/bypass_oracle.sh >> ./out 2>&1 <&- &" >> bypass_oracle crontab bypass_oracle
Các bước râu ria ở trên VPS nào mình cũng làm, bao gồm cập nhập Ubuntu, tắt firewall, tạo 4G RAM ảo, bật BBR, cài đặt docker, docker-compose và bypass oracle …
Cài đặt Artalk
Mình có thử cài Artalk trên 1 server riêng, và cũng thử cài trên chính webserver đang chạy WordPress, mọi thứ đều hoạt động tốt
mkdir Artalk cd Artalk nano docker-compose.yaml
Nội dung bên trong
version: "3.5" services: artalk: restart: unless-stopped container_name: artalk image: artalk/artalk-go ports: - 8181:23366 volumes: - ./data:/data
Chạy lệnh bên dưới để hoàn thành cài đặt
docker-compose pull && docker-compose up -d
Tạo tài khoản admin Artalk
Chạy đoạn code bên dưới để tạo tài khoản admin
docker exec -it artalk artalk admin
Thông tin bao gồm Username
, Email
, Password
Trong trường hợp vì lý do nào đó quên pass admin cũng có thể chạy lệnh trên để tạo lại password
Cấu hình Proxy
Đơn giản nhất thì dùng Cloudflare Tunnels làm reverse proxy thay thế cho dãy localhost:8181
- Cloudflare Zero Trust ->Access -> Tunnel -> Create a tunnel -> đặt 1 tên cho dễ nhớ (Artalk Comment) -> Install and run a connector
- Sau đó tạo Public hostnames c.bibica.net tới localhost:8181
Lúc này thì có thể truy cập vào trang Artalk qua đường dẫn https://c.bibica.net/, link sẽ được tự động chuyển sang trang admin login
https://c.bibica.net/sidebar/#/login
Login với tài khoản admin đã tạo ra ở trên để vào trang quản trị
Nếu không thích dùng Cloudflare Tunnels thì có thể dùng webserver như Apache, Nginx, Caddy …. để tạo reverse proxy, cấu trúc dạng reverse_proxy http://localhost:8181
là được
Add Artalk cho trang của bạn
Vào phần Site (/sidebar/#/sites), ấn vào dấu + để thêm trang
Đặt tên kiểu BIBICA.NET
, đường dẫn gõ đầy đủ vào https://bibica.net/
Tích hợp vào website
Muốn hiện vị trí comment vào đâu thì thêm đoạn code bên dưới
<!-- CSS --> <link href="https://c.bibica.net/dist/Artalk.css" rel="stylesheet"> <!-- JS --> <script src="https://c.bibica.net/dist/Artalk.js"></script> <!-- Artalk --> <div id="Comments"></div> <script> Artalk.init({ el: '#Comments', pageKey: '', pageTitle: '', server: 'https://c.bibica.net', site: 'BIBICA.NET', }) </script>
Điều chỉnh lại các dòng 2,5,14,15 theo cấu hình của bạn
Import từ WordPress -> Artalk
Sử dụng Artransfer import data XML của WordPress, sau đó xuất ra định dạng .artrans để dùng trên Artalk
- Đi tới /sidebar/#/transfer, import file .artrans vào
Vì 1 số lý do nào đó, sau khi bạn import từ WordPress, thấy data trong Artalk mà trên trang không thấy load ra dữ liệu, có thể đổi lại cấu hình về như sau
<!-- CSS --> <link href="https://c.bibica.net/dist/Artalk.css" rel="stylesheet"> <!-- JS --> <script src="https://c.bibica.net/dist/Artalk.js"></script> <!-- Artalk --> <div id="Comments"></div> <script> Artalk.init({ el: '#Comments', pageKey: '<?= addslashes(get_permalink()) ?>', pageTitle: '<?= addslashes(get_the_title()) ?>', server: 'https://c.bibica.net', site: '<?= addslashes(get_bloginfo('name')) ?>', }) </script>
Cấu hình cơ bản là như thế, tiếp theo cần vào quản trị của Artalk để cấu hình các thông số khác
Artalk settings (/sidebar/#/settings)
Mình sẽ nói theo cấu hình mình đang dùng, vì Artalk hỗ trợ khá nhiều dịch vụ của Trung Quốc, mà nhìn vào không hiểu là dịch vụ gì luôn 😀
Bước này khá dài nhưng bạn chỉ phải làm duy nhất 1 lần, sau này backup, restore, move server …. không cần cấu hình lại
- Đổi Timezone về giờ Việt Nam
Asia/Ho_Chi_Minh
- Database dùng SQLite như mặc định
- Logging để mặc định
- Enable cache stick chọn, dùng builtin như mặc định
- Trusted domains là các domain có thể truy cập được vào phần comment, add vào các domain của mình 😛
- Do dùng Cloudflare Tunnels để cấu hình domain ở trên rồi, nên phần SSL này mình tắt như mặc định
Mình có thử Caddy reverse proxy, cũng không thấy cần tùy chỉnh ở ở tính năng này
- Moderator là phần set duyệt các comment từ user, tùy chọn duy nhất cần quan tâm là Default pending
Bật lên là bạn duyệt tay các commnet, tắt như mặc định thì không duyệt, post comment là lập tức hiện public ra 😀
Tính năng này hơi thiếu, mình cũng đã có nói qua ở đầu bài, hi vọng các bản sau tác giả cập nhập nhiều tùy chọn hơn cho tính năng này
- Tính năng Captcha trên Artalk mình rất thích, vì có hỗ trợ Cloudflare Turnstile, cách nó hoạt động cũng rất hay, sau khi ấn vào button SEND COMMENT nó mới load các yêu cầu từ Cloudflare, nên hạn chế được rất nhiều request từ Cloudflare
- Rule mặc định của Artalk cho phép 3 hành động liên tục trong 60s mà không cần kiểm tra (comment, upload ảnh được coi là hành động), khá là hợp lý, bạn có thể tắt tính năng
Captcha is required always
đi để dùng theo rule này - Trong trường hợp lo xa, sợ bị spam thì có thể bật
Captcha is required always
để luôn kiểm tra ở mọi lần comment 😀
Mình dùng khoảng 1 tuần thì không thấy bất cứ 1 comment spam nào, trong khi trên comment gốc của WordPress thì chi chít 😀 Có lẽ với các comment system ngoài như này, không ai thèm viết tool spam làm gì, vì quá thiếu hiệu quả :]]
- Upload là tính năng image upload, bật như ảnh là upload trực tiếp lên VPS 😀
Bạn cũng có thể dùng Upgit để hỗ trợ upload ảnh lên Github, Imgur, Cloudinary cho Artalk theo hướng dẫn tại đây
- Email thì bật gửi qua SMTP như thông dụng,
SMTP send
điền thông tin tài khoản của bạn vào Email address of sender
thì bạn có thể dùng email nào đó tùy ý, cá nhân mình dùng luôn email từ tài khoản SMTP- Hoặc bạn cũng có thể dùng email dạng
no-reply@bibica.net
, để người nhận hiểu là đây chỉ là email thông báo, vui lòng không reply lại
Email sẽ thông báo tới user khi có người reply vào comment của họ
- Cụ thể khi mình ấn vào reply bên dưới comment của Vượng, sẽ có tag reply @Vượng bên dưới, comment này sẽ được thông báo tới user Vượng qua email 😀
- Trong trường hợp người post comment Vượng, điền bừa 1 email ảo gì đó, thì nó cũng sẽ gửi email về email ảo đó
Khoản verified email không thấy Artalk làm, có lẽ họ nghĩ là không cần vì phiền :]]
Tùy chỉnh email gửi tới user thì bạn có thể tham khảo bài viết tại đây
- Multi-push là tính năng thông báo tới admin, mình thích nhận qua Telegram, vì nhanh, dễ quản lý thông báo và không tốn tài nguyên từ email SMTP, nên chọn chỉ nhận thông báo qua Telegram, tắt nhận thông báo từ email 😀
Việc cấu hình Telegram thì bạn có thể tham khảo tại đây
- Noise mode được tắt theo mặc định để tránh tình huống người quản trị phải nhận quá nhiều email, khi 2 user khác nhau comment reply qua lại liên tục, có thể bật lên nếu bạn muốn theo dõi 100% các comment gửi lên trang
UI Settings là giao diện khi post comment, tùy bạn thấy giao diện sao phù hợp thì tùy chỉnh
- Comment box placeholder: nội dung bên trong form comment (mặc định sẽ hiện Leave a Comment)
- Text to display when there is: nội dung hiện ra ở bài viết không có comment (mặc định sẽ hiện No Comment)
- Text of the send button: nội dung đoạn text ở button Send
- Emoticons: bạn có thể dùng link tác giả để sẵn để có thể dùng thêm các icon, meme như chát cho sinh động nội dung comment, mình tắt tính năng này
- Vote button: hiện thị option vote (like) nội dung comment, mình tắt tính năng này
- Dislike button: hiện thị option dislike nội dung comment, mình tắt tính năng này
- User UA badge: hiện thị trình duyệt và windows của khách comment, mình tắt tính năng này
- Editor real-time preview: hiển thị nút preview để xem trước nội dung type vào form
- Flatten mode: option này có 3 giá trị liên quan tới comment hiện ra
TRUE: là tất cả comment hiện bằng nhau (tất cả đều sẽ là deep 1)
FALSE: là comment hiện ra theo tùy chọn của mình
AUTO: phân ra 2 kiểu, trên thiết bị màn hình to như desktop, laptop… mặc định sẽ là Flatten mode: FALSE, trên thiết bị màn hình nhỏ như điện thoại, sẽ là Flatten mode: TRUE - Maximum nesting level: số comment lồng nhau tối đa
- Nesting comment sorting rules: thứ tự comment lồng nhau hiện ra (tính từ deep 2 trở đi)
Gravatar link mặc định của là https://gravatar.com/avatar/
, mình dùng reverse proxy tạo domain comment.bibica.net/avatar
để load các request từ Gravatar nhanh hơn, điền vào tương tự như thế
Dòng API parameters
có thể dùng mặc định, hoặc sửa lại 150 như mình đang dùng cũng được
Number of comments per page
là số lượng comment tối đa ở mỗi trang, tăng thành 1 con số thật lớn để coi như không giới hạn gì cả 😀
Comment content height limit
là giới hạn chiều cao tối đa của comment đầu tiên (deep 1)
Sub-comment area height limit
là giới hạn chiều cao tối đa của comment đầu reply bên dưới (deep 2-3-4 ….)
Mặc định 2 giá trình này được tác giả duy trì ở chiều cao 300-400px, mình set thành 0 là không giới hạn
Làm xong xuôi hết thì ấn vào Apply, sau đó chạy lệnh bên dưới để tất cả thay đổi có hiệu lực
docker-compose up -d --build --remove-orphans --force-recreate
Lúc này, bạn có thể login vào SSH, sẽ thấy file cấu hình /root/Artalk/data/artalk.yml
, bao gồm tất cả các tùy chọn bạn vừa điều chỉnh xong
Tùy chỉnh giao diện
Giao diện mặc định của Artalk theo mình là rất sạch sẽ, màu xanh cơ bản rất dễ phối, cá nhân thì mình đưa hết về đen với xám cho quen mắt, điều chỉnh kích thước font ở nick, comment tương tự với bài viết cho đồng bộ, nên sửa lại 1 chút
Tùy chỉnh giao diện có thể xem cụ thể hơn tại đây
Cache với Cloudflare
Do là 1 hệ thống Comment Systems bên ngoài, khi load dữ liệu là từ 1 trang mới, nên nó gần như không đụng chạm gì với các hình thức cache khác như Cache Rules Cloudflare
Tác giả quản lý cũng khá hay, ví dụ bạn nhập user + email + comment vào form lần đầu tiên, nó sẽ tự lưu lại các thông tin này lên trình duyệt, bạn vào đọc bài viết khác, nó cũng sẽ tự load lại user + email + comment mà bạn đã điền, muốn commment thì chỉ phải gõ nội dung, không cần điền lại user + email, khi có thông báo mới, cũng sẽ có 1 thông báo nhỏ ở form comment, chung quy là rất tiện
Mình có bật cache trực tiếp từ Artalk mà thấy các thứ vận hành rất ổn, không hiểu có đang cache hay chạy trực tiếp nữa :]]
Backup và Restore
Mặc định thì Artalk đã cho backup và restore từ giao diện WEB, rất cụ thể, cũng có thể chạy các lệnh, có điều nhờ cách tác giả cấu hình, tất cả các file đều sẽ nằm trong thư mục Artalk gốc ban đầu, chỉ cần backup nguyên cái thư mục Artalk là được
Sau này chuyển sang VPS khác, chỉ cần upload thư mục Artalk lên thư mục root sau đó chạy 2 dòng lệnh bên dưới với cấu hình Cloudflare Tunnels, rất tiện
cd Artalk docker-compose pull && docker-compose up -d
Không cần phải cấu hình một tràng dài như tờ sớ như bài này nữa
Việc backup hàng ngày, thì mình nghĩ đơn giản nhất là dùng Rclone chuyển thư mục Artalk về 1 dịch vụ lưu trữ nào đó như Cloudflare R2
- Cài đặt Rclone
sudo -v ; curl https://rclone.org/install.sh | sudo bash
- Cấu hình Cloudflare R2
cd /root/.config/rclone touch rclone.conf nano rclone.conf
- Nhập nội dung bên dưới, sửa 3 giá trị access_key_id, secret_access_key, endpoint của bạn vào
[cloudflare-r2] type = s3 provider = Cloudflare access_key_id = 6efd88705eab8b07ef45e6530fc544da secret_access_key = a43f5718804b32045217069032d738b1577561ecd825b2607ab5d42e6a303c1e region = auto endpoint = https://c0c354807827046621d330d8b370f7a4.r2.cloudflarestorage.com
Bấm Ctrl+O -> Enter -> Ctrl+X để save và exit
- Đồng bộ thư mục Artalk tại server sang thư mục Artalk tại Cloudflare R2
rclone sync Artalk cloudflare-r2:cdn-bibica-net/Artalk
Trong đó cloudflare-r2
là tên file rclone config đặt ở trên, cdn-bibica-net
là tên của bucket Cloudflare R2, /Artalk
là đường dẫn nằm trong bucket
Dùng cron để tự cập nhập backup mỗi ngày 1 lần lúc 3h sáng
crontab -l > artalk echo "0 3 * * * rclone sync Artalk cloudflare-r2:cdn-bibica-net/Artalk" >> artalk crontab artalk
Nếu muốn backup, restore hoàn toàn tự động, tạo ra 2 phiên bản, 1 phiên bản đồng bộ dữ liệu liên tục, một phiên bản backup riêng biệt, lưu trữ dự liệu các ngày cũ hơn, thì có thể tham khảo bài viết Bash script move server for Artalk - Comment Systems
Các lỗi gặp phải
- Vị trí form reply không chính xác
Mặc định khi bạn ấn vào nút reply ở bất cứ comment nào, comment box sẽ phải nằm ngay dưới comment đó, nhưng hiện tại với khi reply comment deep 1, comment box sẽ bị trôi xuống dưới cùng
Các comment deep 3-4-5 …. thỉnh thoảng cũng sẽ bị
Lỗi này tác giả thông báo là đã sửa, chắc khi có bản cập nhập mới, sẽ không còn nữa
- Lỗi dấu gạch ngang
Mặc định Artalk sử dụng thẻ <title> làm tiêu đề cho bài viết, mỗi cái không rõ vì lý do gì đó, trên thèng bibica.net, thẻ <title> dấu gạch ngang được hiển thị là & #8211;
Kết quả là khi gửi email cho user, tiêu đề trang sẽ bị lỗi hiển thị 😀
Xử lý tạm bằng cách dùng Lucas String Replace đổi kí tự & #8211;
sang dấu gạch ngang (-
)
Markdown format
Comment kiểu Markdown được khá nhiều trang sử dụng, cá nhân thì mình không quan tâm lắm, vì quen thuộc format cũ, từ lúc biết tới github mình mới hay dùng format này
*Italic text* **Bold text** ~~I really mean that~~ * First item * Second item * Third item [Link text](https://www.example.com) ```python def hello_world(): print("Hello, World!") ``` > This is a blockquote. | Column 1 | Column 2 | |----------|----------| | Cell A | Cell B | # Heading 1 ## Heading 2 ### Heading 3
Có thể nhìn ví dụ cụ thể bằng comment bên dưới bài này 😀
Kết luận sau khi sử dụng 1 tuần
Mọi Comment Systems mình từng thử đều có hiệu năng rất tốt, Artalk cũng tương tự, tốc độ comment có thể gần bằng với live chat, kể cả khi bạn có comment liên tục, trên VPS VM.Standard.E2.1.Micro cực yếu mà chỉ dùng loanh quanh 1-2% CPU thì tác giả code rất tốt
Khi import comment từ các nguồn khác vào, trong bài viết thì hiện đủ các comment nhưng ở trang quản trị chỉ hiện ra 1 trang đầu (ở bản commits mới nhất mình thấy lỗi này cũng đã được fix), các tùy chọn xóa comment khá khó, chưa cho phép chọn 1 loạt comment để xóa 1 lần 😀 cũng không quá quan trọng, vì nếu tài khoản nào spam xóa tài khoản đó đi thì cũng tự xóa các comment đó đi, cũng tạm ổn
Càng dùng mình càng thấy tính năng của Artalk mạnh thật, nhiều tính năng rất thiết thực, nếu tác giả sửa hết 1 số lỗi vặt mình có đề cập trong bài và nâng cấp thêm 2 tính năng là [FEATURE] Add options for moderator default pending và [FEATURE] email unsubscribe mình nghĩ Artalk sẽ là Comment Systems hàng đầu, kể cả bạn có đang dùng WordPress
Đúng ra bài viết này sẽ rất đơn giản, nếu tác giả cập nhập sửa lỗi import từ WordPress từ sớm, mình phải tự xử lý, nên bài này chỉnh sửa lại khá nhiều 🙁
Một trong những lý do mình khá thích comment ngoài, là vì nó có thể tích hợp tốt vào các trang tĩnh như static.bibica.net, trong trường hợp VPS hết tiền, mình có thể chuyển hẳn thèng bibica.net về trang static, lúc nào cập nhập, viết bài mới thì làm trên localhost, sau đó đồng bộ bài viết lên trang static là xong 😀
Than thở
Ban đầu mình nghĩ Artalk cấu hình siêu đơn giản, nên mới giới thiệu bài này, ai đè vừa viết xong thì tác giả sửa một số lỗi liên quan tới import WordPress, làm cấu hình cũ mình viết bị lỗi … trong lúc viết thêm, lại phát sinh 1 số lỗi mới, mà tác giả giờ cũng đang ngồi …. để sửa 😀
Đây có lẽ là bài viết dài nhất trên bibica.net, vì nó đã phải tách nhỏ ra thêm 4 bài phụ
- Bash script move server for Artalk - Comment Systems
- Cài đặt Upgit, hỗ trợ upload ảnh lên Github, Imgur, Cloudinary cho Artalk - Comment Systems
- Tùy chỉnh email gửi tới user trên Artalk - Comment Systems
- Tùy chỉnh giao diện trên Artalk - Comment Systems
Tạm nếu bạn nào đang đọc thì chịu khó 1 tẹo, vì các phần viết nó hơi loạn, mình sẽ cập nhập lại câu cú, bố cục bài viết, sau khi tác giả sửa thêm 1 số lỗi :((
Comment policy: We love comments and appreciate the time that readers spend to share ideas and give feedback.
Notes: However, those deemed to be spam or solely promotional will be deleted.
You can create a Gravatar account, add avatar, then use that email to comment here, your account will have a more beautiful Avatar, easier to recognize with other members.