Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> System Aktualizacji.
my_key
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 5.03.2006

Ostrzeżenie: (0%)
-----


Witam wszystkich.

Przystępuje do realizacji większego projektu i zastanawiam się nad paroma problemami.
Jednym z nich jest system aktualizacji.
Najpierw użytkownik musi sprawdzić czy ma aktualną wersje. Logując się do swojego panelu system musi pobrać informację o aktualnej wersji.
Nie chce zapisywać w każdej aplikacji dostępu do bazy danych ze względów bezpieczeństwa.
Uważam, że lepszym rozwiązaniem będzie pobranie kodu XML generowanego dynamicznie np: www.domena_projektu.pl/last_version_info.xml
Co o sądzicie o takim rozwiązaniu?

Kolejna sprawa to kwestia już aktualizacji plików.
W jaki sposób to wykonać?
Jak pobrać pliki przez PHP?
Jak je zapisać/podmienić w odpowiednich folderach? Wydaje mi się, że wystąpi problem z chmod dla folderów i plików.
Ma ktoś jakieś uwagi na ten temat?
A może ktoś się orientuje jak to jest realizowane w Wordpress'ie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Ok, opcję aktualizacji masz zawsze dwie (IMG:style_emoticons/default/smile.gif)

1. Aktualizacja jako paczka
2. Aktualizacja jako lista

I teraz tak:

ad 1. Aktualizacja jako paczka polegała by na utworzeniu w serwisie paczki plików, które musza zostać zaktualizowane (dobre przy krytycznych aktualizacjach oraz takich gdzie jest dużo zależności). Czyli to w serwisie musi być paczka, program zasysa i podmienia pliki.

ad 2. Aktualizacja jako lista sprowadza się do przechowywania ZAWSZE najnowszych wersji wszystkich używanych plików. Program pobiera listę aktualizacji, lub sprawdza czy jego pliki nie są stare i pobiera te, które wg. siebie potrzebuje.

Obie opcje są tak samo porąbane ;P w 1 musisz generować paczki za to pobranie jest łatwe a w drugiej nie martwisz się paczkami ale za to ciężej znaleźć i zaktualizować wszystkie stare pliki...

Co do samego wersjonowania to zawsze można zrobić to najłatwiej jak się da (IMG:style_emoticons/default/smile.gif) Wrzucasz nowy plik do "repozytorium" dostaje on wersję nr 1, nadpisujesz plik - ma już wersję nr 2, znowu nadpisujesz - ma wersję 3 itd... - to jeżeli byś robił według metody 1 gdzie plik to paczka plików.

W drugiej jest ciężej- tak jak wspomniałeś trzeba dać jakieś rozróżniki plików (np crc/md5) albo do aplikacji dołączyć liste plików z ich wersjami. Po aktualizacji lista ta też by się aktualizowała - sprawdzenie nowej listy czy jest taka jak stara nie powinno stanowić problemu.

A teraz moje zdanie - (czytaj jak ja bym to zrobił) (IMG:style_emoticons/default/smile.gif)

najprościej! (IMG:style_emoticons/default/tongue.gif)

Wrzucam wersję programu do samego programu. Program sprawdza czy jest paczka z wersją wyższą niż ma, pobiera, aktualizuje, aktualizuje swoją wersję i śmiga...

Jeden problem - Aktualizacja może być robiona niezależnie (to znaczy że paczka wersji 1.5.6 ma wszystkie zmiany z wersji poprzednich) lub zależnie (każda paczka ma tylko zmiany w stosunku do poprzedniej wersji - jak mam 1.5.3 to muszę po kolei aktualizować do 1.5.4, 1.5.5 i dopiero 1.5.6) - ja bym stawiał na niezależność (IMG:style_emoticons/default/wink.gif)

HTH! (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 06:26