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? |
|
|
|
![]() |
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) |
|
|
|
my_key System Aktualizacji. 23.10.2011, 15:56:46
Helid Po zalogowaniu do PA przez użytkownika skrypt pobi... 23.10.2011, 19:18:30
Sephirus Zgadzam się - XML zbędny. Dodałbym jeszcze do prop... 24.10.2011, 08:17:11
my_key Hmm no może i macie racje, po co się bawić z bazą ... 24.10.2011, 08:56:06
Fifi209 Zainteresuj się PHAR, z pewnością ułatwi Ci to zad... 24.10.2011, 15:38:47
my_key Ja też postawię na prostotę i niezależność
Pozdra... 24.10.2011, 17:24:28 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 06:26 |