Cập nhật máy chủ cho tiện ích mở rộng thương mại


8

Joomla cung cấp khả năng thêm một máy chủ cập nhật cho phép người dùng cài đặt bản cập nhật mở rộng khi phát hành chỉ với một nút bấm.

Điều này tất nhiên là tuyệt vời cho các tiện ích mở rộng miễn phí, tuy nhiên đối với các tiện ích mở rộng thương mại, người ta sẽ gặp phải một vấn đề khi ai đó có thể đơn giản lấy URL tải xuống từ tệp XML cập nhật và xuất bản nó, vì vậy đây là điều không nên.

Những gì tôi đã có trong đầu, đang làm một cái gì đó trên cùng một dòng, nhưng nó chỉ đơn giản là thông báo cho người dùng rằng có một bản cập nhật và họ sẽ phải truy cập trang web của nhà phát triển và tải xuống thủ công, tuy nhiên tôi không sử dụng bất kỳ đăng ký nào các tiện ích mở rộng, do đó không có quyền đặc biệt để có quyền truy cập vào các tiện ích mở rộng thương mại này. Thay vào đó tôi đã sử dụng một thành phần đơn giản cho phép người dùng mua tiện ích mở rộng và đó là thành phần đó.

Vì vậy, câu hỏi của tôi là, có một phương pháp tích hợp mà tôi không biết rằng cho phép một máy chủ cập nhật cho các tiện ích mở rộng thương mại không? Tôi tin rằng tôi nhớ điều này đã được thảo luận từ lâu, nhưng không chắc có gì được triển khai trong Joomla cho nó không.

Hoặc có thể thay vào đó, sẽ là một ý tưởng để ngăn chặn truy cập trực tiếp vào XML nếu một loại trong URL trong trình duyệt của họ sử dụng tệp htaccess ?

Lưu ý : Tôi đang đề cập đến một mô-đun, khác tôi có thể đã xem xét một cái gì đó như Akeeba Live Update


1
Tôi sẽ liên hệ với một trong những nhà sản xuất mở rộng đã làm điều này. Các anh chàng Rocket Theme đã tạo plugin riêng để xác thực máy chủ của họ và vẫn sử dụng cơ chế cập nhật tích hợp. Akeeba thực hiện nó mà không cần thêm plugin, nhưng sẽ cập nhật nếu mã của bạn được nhập trong cài đặt thành phần. Bạn cũng có thể hỏi các anh chàng watchful.li vì hệ thống của họ có thể khai thác tất cả những thứ này và chạy nâng cấp cho bạn. Ai đó có thể sẵn sàng để cho bạn biết về cách họ làm điều đó.
Brian Peat

@BrianPeat - cảm ơn bạn đã đóng góp. Tôi đã tìm thấy một cam kết trên Github của Nick từ Akeeba, cho phép chính xác những gì tôi muốn, tuy nhiên (và có lẽ chỉ cần tôi có một khoảnh khắc tóc vàng), nhưng tôi không cảm thấy "hướng dẫn dành cho nhà phát triển". Nó không đề cập đến nơi để đặt mã. Người tôi làm việc cùng sẽ hỏi anh ấy chi tiết hơn về vấn đề này vì vậy hy vọng điều này sẽ đưa tôi đến một nơi nào đó.
Lodder

Câu trả lời:


5

Phiên bản thực hiện của tôi sẽ là ...

Khách hàng: - Chỉ cần cung cấp cho mỗi người dùng đã đăng ký một khóa (bí mật) duy nhất và chỉ cần chuyển nó dưới dạng biến GET khi kiểm tra các bản cập nhật mới.

Máy chủ: - Tương tự, chỉ cần kiểm tra các yêu cầu đến cho biến đó và khớp với cơ sở dữ liệu , cool? allow : deny;.

Sử dụng sai: - Giữ một bản ghi của từng khóa đang được sử dụng và không cho phép các yêu cầu khả thi nào được phép, ngoài ra chỉ đánh dấu khóa đó và người dùng của nó là đáng ngờ, sau đó làm bất cứ điều gì bạn nghĩ là làm, cảnh báo rằng người dùng đó đang chặn đôi khi, hoặc chỉ chấm dứt đăng ký đơn giản ... vv khả năng là vô tận.


Điều gì xảy ra sau khi máy chủ trả lời là 'cho phép'? Nói cách khác, cách xác thực này hoạt động cùng với máy chủ cập nhật?
Malaiselvan

allowcó nghĩa là máy chủ đã quyết định gửi tệp cập nhật dưới dạng phản hồi.
Mohd Abdul Mujib

Cảm ơn @ 9ksoft. Giải pháp của bạn sẽ cho phép người dùng tải xuống tiện ích mở rộng được cập nhật. Tôi tin rằng nó không thể thực hiện bất kỳ cài đặt tự động bằng cách sử dụng máy chủ cập nhật phải không? Hoặc bạn có một giải pháp để tự động cập nhật sau khi xác nhận? Xin lỗi vì đã hỏi nhiều câu hỏi .... :-)
Malaiselvan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.