- Một hình thức hosting trong đó toàn bộ các tệp của website được nén thành ZIP rồi mã hóa Base64 và gắn vào sau tên miền, khiến chính địa chỉ đó trở thành một website hoàn chỉnh
- Cấu trúc cho phép truyền tải website chỉ bằng cách chia sẻ địa chỉ, không cần tải tệp riêng hay lưu trên máy chủ
- Xử lý nén ZIP, mã hóa Base64 và tạo URL chỉ bằng một dòng lệnh, đồng thời cũng hỗ trợ cách kéo thả tệp ZIP nếu không có dòng lệnh
- Máy chủ chỉ lưu nội dung trong RAM trong 15 phút rồi hủy, và chỉ xử lý lại khi cùng một liên kết được mở lại
- Là mã nguồn mở như một phần của dự án máy chủ web Lwan, thậm chí có thể in ra giấy và quét lại qua mã QR
Khái niệm smolsite
- Toàn bộ website được chứa trong URL, nên khi chia sẻ địa chỉ thì bản thân website cũng được truyền đi cùng
- Giống như ví dụ gồm hai tệp (
index.html,mylogo.png), có thể gói nhiều tệp lại và chuyển thành một địa chỉ duy nhất
Cách tạo smolsite
- Nén tất cả tệp thành tệp ZIP rồi mã hóa Base64, sau đó nối vào sau
https://smolsite.zip/- Ví dụ lệnh:
$ echo "https://smolsite.zip/\zip -DXjq9 - index.html mylogo.png | base64 --wrap 0`"`
- Ví dụ lệnh:
FAQ
-
Khi không có dòng lệnh
- Có thể chia sẻ bằng cách kéo tệp ZIP vào thanh màu tím ở phía dưới
-
Có thể host trên giấy không
- Có, và có thể xem phiên bản có thể in/quét bằng cách nhấp vào mã QR
-
Có phải mã nguồn mở không
-
Cách máy chủ xử lý ZIP
- Nội dung được xử lý trên máy chủ và giữ trong RAM trong 15 phút, sau đó bị xóa
- Tuy nhiên, nếu ai đó mở lại cùng một liên kết thì sẽ được xử lý lại
-
Ứng phó với ZIP bomb
- Dữ liệu đã deflate được gửi nguyên trạng tới trình duyệt mà không chỉnh sửa, và vì không có giải nén đệ quy nên có mức phòng vệ nhất định
-
Có thể tải xuống hoặc xóa nội dung không
- Dù smolsite cố gắng hết sức để ngăn việc chia sẻ chính xác URL, nhưng vì nội dung nằm trong URL nên không thể xóa hoàn toàn
- Người có liên kết vẫn có thể trích xuất nội dung mà không cần smolsite
- Dù smolsite cố gắng hết sức để ngăn việc chia sẻ chính xác URL, nhưng vì nội dung nằm trong URL nên không thể xóa hoàn toàn
1 bình luận
Ý kiến trên Hacker News
https://smolsite.zip/UEsDBBQAAgAIAFtLJ1daaE7RlwIAAN4EAAAKAAA...
https://tinyurl.com/dmk9e4m2
data:text/html,My%20small%20websiteLook,%20it's%20real!Nếu muốn, bạn cũng có thể mã hóa base64 bằng trình tạo data URI. Ưu điểm của smolsite là nếu dùng zip thì có thể nhét được nhiều hơn một chút so với data URI, và một số JavaScript API hoạt động trên URL smolsite nhưng không hoạt động trên data URI
data:text/html,Tôi để nó trên thanh bookmark để dùng
[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_...
https://wgx.github.io/anypage/?eyJoMSI6IkhlbGxvIEhOISIsImgyI...
[0] https://nopaste.boris.sh/
Tuy nhiên, vì phần anchor không được gửi lên máy chủ, nên dù máy chủ muốn cũng không thể kiểm tra nội dung độc hại được truyền qua đó.
Những bài Show HN tôi từng thấy đến giờ đều thú vị, và chúng tạo động lực để tôi cũng bắt đầu dự án của mình rồi trau chuốt nó để có thể giới thiệu ở đây. Cảm giác thật sự rất tuyệt khi người khác gửi bài về công việc của mình và mình có thể trò chuyện ở đó.
Tất nhiên cuối cùng sẽ vướng giới hạn độ dài URL, nhưng cũng có thể đặt thêm một tầng để curator kết hợp các nhóm URL thành văn bản lớn hơn. Có thể thêm chút phép màu LLM để tạo các nhóm đó, và khi ấy nó sẽ trở thành một thư viện chứa không chỉ mọi cuốn sách đã được viết, mà cả mọi cuốn sách có thể được viết.
Tất nhiên là nói đùa thôi. Tôi biết điều này cũng giống như nói rằng Notepad đã chứa sẵn mọi cuốn sách từng tồn tại, chỉ là bạn phải tự gõ chúng vào mà thôi.
https://mkaandorp.github.io/hdd-of-babel/
https://news.ycombinator.com/item?id=34312546
https://news.ycombinator.com/item?id=2464213
Để tránh phải trả tiền cho vendor website mua module lịch sự kiện đắt đỏ, tôi đã code một trang công khai tạo lịch bằng cách đặt một schema sự kiện JSON đơn giản được mã hóa base64 vào thuộc tính
data-events. Nhân viên dùng một trang riêng tư để lấy dữ liệu sự kiện hiện có từ trang công khai, điền sẵn vào trình dựng lịch, chỉnh sửa rồi xuất ra đoạn code mới và dán vào trang công khai.Về cơ bản thì nó hoạt động tốt, nhưng cuối cùng hình như chúng tôi vẫn trả tiền cho add-on lịch.
https://sonnet.io/projects#:~:text=Laconic!%20(a%20Twitter%2...