Tag Archives: praca magisterska z 2008 roku

Wymagania techniczne programu Joomla!

praca magisterska z 2008 roku

Jest kilka technicznych wymogów dla skutecznego stworzenia strony internetowej.

  • Komputer

To nasze podstawowe narzędzie pracy. By móc na nim komfortowo działać potrzebujemy przynajmniej średniej klasy komputera – nawet komputer sprzed 2-3 lat będzie do tego celu odpowiedni. Wiadomo jednak, że nowszy komputer gwarantuje mniejsza awaryjność, ponadto pozwala na znaczne oszczędności czasu, ponieważ szybszy jest dostęp do danych i proces ich przetwarzania. Może to być przydatne w szczególności podczas pracy z edytorami graficznymi wymagającymi dużej mocy obliczeniowej procesora oraz wydajnej karty graficznej. Odpowiednia ilość pamięci operacyjnej (RAM) – 1 GB lub więcej również znacząco poprawi komfort pracy.

  • Dostęp do Internetu

W dzisiejszych czasach dostęp do sieci Internet staje się czymś powszechnym i pożądanym jak dostęp do telefonu, telewizji czy wręcz energii elektrycznej. Aby móc publikować stronę czy dodawać do niej zawartość, potrzebny jest stały dostęp do Internetu, a jeśli nie stały, to choćby czasowy, np. z kafejki internetowej.

  • Klient FTP

FTP (ang. File Transfer Protocol) jest standardowym protokołem służącym do transmisji plików przez Internet. Wgrywanie plików na serwer poprzez protokół FTP wymaga specjalnego oprogramowania tzw. klienta FTP, który pozwala wgrać dowolny plik na zdalny serwer lub ściągnąć go z serwera. W funkcje klienta FTP wyposażone są obecnie prawie wszystkie popularne przeglądarki internetowe. Jeśli chcemy użyć przeglądarki w trybie FTP, to w polu adresu na pierwszej pozycji wpisujemy nie http://, ale ftp://. Następnie wpisujemy adres serwera. Po nawiązaniu połączenia z serwerem, musimy podać odpowiedni login i hasło celem autoryzacji i już po chwili można wysyłać i odbierać pliki.

Jednak za używaniem wyspecjalizowanych klientów FTP przemawia wiele argumentów, m.in[1]:

  • większa prędkość transferu,
  • wznawianie niedokończonych transferów,
  • budowa zbliżona do menadżera plików (intuicyjna, prosta obsługa),
  • wykorzystanie techniki „przeciągnij i upuść”,
  • możliwość edycji i przechowywania haseł dostępu,
  • synchronizacja katalogów,
  • układanie zadań w kolej ce,
  • podgląd postępu kopiowania i kasowania,
  • edycja katalogów i plików na koncie(np. modyfikacja nazw i rozszerzeń),
  • szyfrowanie transmisji.

Przykładowymi klientami FTP są SmartFTP, FileZilla, WinSCP, Total Commander. Do zarządzania plikami konta użyłem programu darmowego programu WinSCP, który umożliwia realizację bezpiecznego połączenia szyfrowanego.

  • Przeglądarka internetowa

Przeglądarka internetowa jest programem komputerowym służącym do przeglądania stron WWW. Na większości komputerów PC z zainstalowanym systemem operacyjnym Microsoft Windows domyślną przeglądarką jest Internet Explorer.

W systemie CMS zarządzanie stroną (tworzenie nowych stron czy edycja ich zawartości) odbywa się za pomocą panelu administracyjnego – wydzielonej części serwisu WWW dostępnej tylko dla użytkowników posiadających konto i odpowiednie uprawnienia. Zasada działania panelu administracyjnego jest podobna do obsługi poczty elektronicznej lub internetowego konta bankowego. Aplikacja CMS pracuje na serwerze WWW, a do jej obsługi wystarcza standardowa przeglądarka internetowa oraz podstawowa znajomość oprogramowania biurowego – dzięki temu rozwiązaniu nie ma konieczności instalowania dodatkowego oprogramowania na komputerach osób współtworzących serwis. Przeważająca część paneli administracyjnych swoją pełną funkcjonalność prezentuje właśnie w przeglądarce IE, jest jednak sporo takich systemów, które działają równie dobrze, jeśli nie lepiej, w alternatywnych przeglądarkach stron WWW. W przygotowaniu projektu użyłem właśnie takiej przeglądarki, jaką jest Mozilla Firefox, która należy do rodziny darmowych przeglądarek dostępnych dla systemów operacyjnych Windows, GNU/Linux i Mac OS X. Jest szybka, zajmuje mało miejsca, a jednocześnie oferuje szerokie możliwości.

  • Miejsce w sieci

Żeby umieścić stronę WWW w Internecie potrzebna jest odpowiednia ilość powierzchni dyskowej i komputer podłączony do sieci Internet, jednak niewiele osób dysponuje komputerem z zainstalowanym oprogramowaniem serwera WWW czynnym 24 godziny na dobę i podłączonym do Internetu odpowiednio szybkim łączem[2]. Z rozwiązaniem tego problemu przychodzą nam darmowe lub płatne usługi serwerów WWW, na których można umieścić pliki składające się na serwis internetowy. Opublikowanie serwisu na serwerze WWW jest podstawą zaistnienia każdej strony w Internecie. Serwer wirtualny podobnie jak hosting, jest usługą, którą provider internetowy świadczy na rzecz swoich klientów. Różnica tkwi w tym, iż serwer wirtualny to emulacja serwera fizycznego, czyli otrzymujemy możliwość administracji zasobami serwera, kontami, prawami dostępu. Z serwerów wirtualnych korzystają zazwyczaj firmy, które potrzebują dużej ilości miejsca na pliki, wielu skrzynek pocztowych, dużego transferu itd.

Z kolei hosting to prosta usługa internetowa, która polega na goszczeniu klienta i udostępnieniu mu zazwyczaj jednego konta na strony WWW z dostępem poprzez klienta FTP oraz skrzynkę e-mail. Hosting jest oferowany najczęściej w formie gotowych pakietów obejmujących szereg usług dodatkowych, jak dostęp do konta przez FTP, wbudowane oprogramowanie bazy danych, zarządzanie kontem poprzez panel administracyjny, rejestracja bądź przeniesienie domeny. Darmowy hosting jest dobry do stawiania pierwszych kroków w Internecie, lecz oprócz zalet niesie z sobą niedogodności w postaci:

  • niemożność powiększania konta o dodatkową powierzchnię,
  • ograniczone transfery, co powoduje wolne wczytywanie stron WWW,
  • ukazywanie się reklam w naszym serwisie, choć nie zawsze jest to regułą,
  • ograniczone możliwości konfiguracji,
  • spora awaryjność konta,
  • w przypadku zawieszenia usług operator może skasować konto bez powiadomienia,
  • brak kopii zapasowych.

Konto płatne pozbawione jest tych wad. Podczas sprawdzania oferty płatnych firm hostingowych, należy zaczerpnąć wszystkich możliwych informacji o parametrach konta i warunkach, na jakich jest ono udostępniane.

Przy wybieraniu konta należy zwrócić uwagę na następujące parametry (tab.2):

  • wyrażona w megabajtach lub gigabajtach ilość dostępnego miejsca, która określi rozmiary naszego serwisu. Często również spotyka się z informacją określającą maksymalny rozmiar pliku,
  • wielkość transferu, który określa limit danych, jakie można przesłać i pobrać z serwera użytkownika w danym okresie, np. przez miesiąc lub rok. Jeżeli internauci będą pobierać z naszej strony duże pliki graficzne lub filmy, to potrzebny jest bardzo duży transfer – ok. 20 GB miesięcznie, jeśli strona służy do przeglądania informacji wystarczy transfer rzędu 4 GB miesięcznie. Należy zwrócić uwagę, że wartość zapotrzebowania transferu zwykle ulega zmianie, gdyż popularność serwisu może rosnąć lub maleć. Również nie każde odwiedziny internauty wiążą się z takim samym zużyciem transferu, gdyż często przeglądarki zapisują na dysku użytkownika pliki tymczasowe, najczęściej pliki graficzne z danej strony, tylko po to, aby przy następnym wejściu na stronę nie pobierać całej zawartości od nowa, co zapewnia większość prędkość odczytania strony oraz zmniejszenia obciążenia serwera,
  • liczba baz danych, np. MySQL. Baza danych to nieodłączny element serwisów WWW. W połączeniu z językiem programowania PHP daje ona przeogromne możliwości tworzenia witryn,
  • dodatkowe możliwości techniczne, np. obsługiwane standardy programowania PHP, CGI, ASP. Jeśli nasz serwis jest zaprojektowany w języku PHP, a serwer nie posiada jego obsługi, uniemożliwi to wyświetlenie witryny.

Przed wykupieniem serwera w danej firmie, należy wcześniej skorzystać z opcji bezpłatnego testowania usługi. Tylko wtedy będziemy mieć pewność co do odpowiedniego działania serwera, łatwości jego administrowania oraz konfiguracji.

Tabela 2. Przykładowe zestawienie usług hostingowych na dzień 10.07.2008

Nazwa firmy Yoyo.pl EasyISP.pl WebSerwer.pl Home.pl
Pojemność serwera 150 MB 500 MB 5 GB 20 GB
Transfer miesięczny bez limitu 10 GB 25 GB 900 GB
liczba baz MySQL 1 1 1 100
Liczba domen bez limitu bez limitu bez limitu bez limitu
Moduł phpMyAdmin[3] tak tak tak tak
Panel administracyjny[4] WebAdmin Direct Admin WebAdmin WebAdmin
liczba kont FTP 1 1 1 bez limitu
Konta pocztowe 1 15 bez limitu bez limitu
Test konta 7 dni 14 dni 30 dni
Opłata roczna brutto darmowe 79,30 zł 363,56 zł 549,10 zł
  • Domena

Domena internetowa to alfanumeryczne tłumaczenie adresu IP identyfikującego każdy komputer podłączony do Internetu. Dla użytkownika jest to nazwa wskazująca położenie określonej strony WWW w sieci. Z prawnego punku widzenia, domena internetowa to znak o określonej wartości majątkowej, wynikającej z jego funkcji odróżniającej oraz faktycznej wyłączności w zakresie jego użytkowania. Jedynie osoba lub firma, instytucja, która zarejestrowała tę domenę jest prawnym posiadaczem na okres zawarty w umowie. Rejestracja domeny internetowej kreuje jedynie umowne prawa i obowiązki wynikające z umowy z rejestratorem (pośrednikiem) i nie powoduje powstania po stronie jej dysponenta żadnego wyłączonego prawa do domeny internetowej[5]. Użycie domeny nie jest możliwe, dopóki nie zostanie ona zarejestrowana. Nie jest możliwe zarejestrowanie domeny należącej już do kogoś innego. W każdym kraju istnieje jednostka odpowiedzialna za zarządzanie rynkiem rejestracji domen internetowych. Rejestracją domen w Polsce zarządza NASK – Naukowa i Akademicka Sieć Komputerowa, która została utworzona przy Uniwersytecie Warszawskim w 1991 roku. Aby móc zarejestrować domenę trzeba spełniać następujące warunki: domena musi być wolna oraz należy mieć ukończone 18 lat.

  • Środowisko implementacji

Do opracowania projektu wykorzystany został komputer o następującej konfiguracji:

  • procesor AMD Athlon™ 800MHz, 512 MB RAM, dysk twardy Seagate 80GB, karta graficzna NVIDIA GeForce2,
  • system operacyjny Windows XP Professional PL,
  • przeglądarka internetowa Mozilla Firefox wersj a 3.0,
  • edytor grafi czny GIMP 2.4.6,
  • pakiet WebServ, w którego skład wchodzą[6]:

o Apache 2.2.6 – jest to wiodący program do obsługi serwerów HTTP na całym świecie. WebServ zapewnia w pełni darmowy i stabilny program stosowany przez wielu użytkowników oraz firmy hostingowe na świecie,

o PHP 4.4.7 – jest zaliczany do najnowszych technologii, choć korzenie tego programowania sięgają początków Internetu. Przy użyciu tego narzędzia można stworzyć własną dynamiczną stronę internetową, o MySQL 5.0.45 – to jeden z najpopularniejszych darmowych silników relacyjnych baz danych. Jego atutem jest szybkość i funkcjonalność, a w połączeniu ze skryptami PHP umożliwia prawidłowe działanie oraz ogromną funkcjonalność dla dynamicznych stron,

o Perl 5.10.0 – Perl to interpretowany język programowania autorstwa Larry’ego Walla przeznaczony głównie do pracy z danymi tekstowymi, ale również doskonale radzący sobie z wszystkimi potrzebami programisty czy administratora systemu,

o MySQL Control Center 0.9.4 – graficzna aplikacją służąca do sprawnego zarządzanie bazami danych MySQL,

o CesarFTP 0.99g – CesarFTP jest to serwer FTP. Jeśli udostępniamy konto WWW osobie, która nie ma bezpośredniego dostępu do naszego komputera, będzie mogła zarządzać swoimi plikami z każdego miejsca na świecie, dodatkowo takich osób z kontami WWW na naszym serwerze może być wiele,

o Webalizer 2.1 – jest dostępnym na licencji GPL analizatorem logów serwera Apache. Generuje szczegółowe statystyki odwiedzin danego serwisu WWW w formacie HTML,

o No-IP Dynamic Update Client 2.2.1 – dzięki No-IP możemy posiadać wiele własnych domen. Wystarczy wpisać w przeglądarce adres strony no-ip.com, zarejestrować się, a następnie w panelu administracyjnym wpisać wybrane przez siebie domeny,

o DynDNS Update Client 3.1.0.15 – aplikacja która mapuje nazwę komputera na adres IP,

o phpMyAdmin 2.11.4 – to napisane w języku PHP narzędzie służące do łatwego zarządzania bazą danych MySQL.

WebServ jest pakietem umożliwiającym uruchomienie serwera WWW z obsługą PHP i MySQL na komputerze bez łączenia się z Internetem. Dzięki temu możemy w całości wykonać projekt na lokalnym komputerze, a następnie umieścić go w sieci. Oczywiście Joomla! umożliwia tworzenie portalu WWW bezpośrednio na serwerze naszego dostawcy hostingowego. Używanie programu WebServ nie jest konieczne, lecz wygodniejsze.

[1]   Zeldman J., „Projektowanie serwisów WWW. Standardy sieciowe.”, Helion, Gliwice 2007

[2]  Jarosz D., „Płatny hosting czyli gdzie się ulokować”, Magazyn Internet 2006

[3]   phpMyAdmin jest narzędziem pozwalającym zarządzać bazą MySQL. Program ten zapewnia realizację wszystkich podstawowych funkcji: tworzenie i usuwanie tabel, umieszczanie rekordów oraz admini stracj ę bazą

[4]   Panel administracyjny to bogaty zestaw skryptów i aplikacji służący do zarządzania serwerem WWW, e-mail i FTP oraz kilkoma innymi usługami. Za jego pomocą można kontrolować ustawienia serwera

[5]   Kolbusz E., „Informatyka w zarządzaniu”, Zeszyt naukowy Instytutu Informatyki w Zarządzaniu, Uniwersytet Szczeciński, Szczecin 1999

Powstania programu Joomla!

praca magisterska z 2008 roku

W latach dziewięćdziesiątych. ubiegłego wieku firma Sun Microsystem uważała, że „sieć to komputer”. W tym samym czasie Microsoft uprawiał taką politykę, by system Windows znalazł się na dysku każdego komputera. Filozofię, którą można scharakteryzować jako „moje”.[1]

Motywacją powstania tych filozofii były względy ekonomiczne – Microsoft sprzedawał oprogramowanie dla komputerów z myślą o indywidualnych klientach, firma Sun z kolei sprzedawała sprzęt i programy dla przedsiębiorstw.

Internet powstał w latach 60. ubiegłego wieku, lecz dopiero po 30 latach zaczął się rozprzestrzeniać w szalonym tempie. Rozwój Internetu wzrastał dzięki językowi HTML (ang. HyperText Markup Language), w którym pisało się strony internetowe. Osoba, która nie posiadała adresu e-mail stawała się nieosiągalna, a firma bez strony WWW okazywała się nie tylko przestarzała, ale traciła także szacunek w oczach klientów. Nowi obywatele sieci pochodzili za świata, w którym rządziły dwie filozofie – „moje” i „nasze”. Ci pierwsi kupowali edytory HTML, by móc tworzyć strony

WWW, ci drudzy pisali kod własnoręcznie w prostych edytorach tekstu. Zaczęły powstawać agencje internetowe, w których można było zamówić strony internetowe. Wszystkie te grupy, które tworzyły strony internetowe, napotykały ten sam problem – strony napisane w HTML były statyczne, a zmiana zawartości strony wymagały poprawek na dysku twardym, wgrywania strony na serwer. Było to rozwiązanie niewygodne i nieekonomiczne oraz bardzo ograniczało tworzenie zaawansowanych projektów. Zaczęto tworzyć programy mające na celu automatyzację tych procesów. Takie strony zawierały interaktywne elementy w stylu licznika odwiedzin. Zaczęto tworzyć aplety Java, które były używane do obsługi interakcji aplikacji internetowych niemożliwych do osiągnięcia za pomocą HTML-a. Takie rozwiązanie pozwalało tworzyć bardziej zaawansowane projekty, jak na przykład internetowa rezerwacja biletów lotniczych. Rezultatem starań był rynek, na którym dochodziło do prezentacji coraz to nowszych wersji przeglądarek internetowych, co świadczyło o ogromnym potencjale tkwiącym w internetowym rynku.

Kolejnym przełomem było stworzenie nowego języka skryptowego PHP przez duńsko-grenlandzkiego informatyka Rasmusa Lerdorfa. Ten ambitny programista przyjął sobie za cel stworzenie interaktywnych elementów na swojej stronie domowej i w ten oto sposób powstał nowy język programowania. Od samego początku język ten był zintegrowany z bazą danych MySQL, był wspierany przez serwer sieciowy Apache, który zapewniał odpowiednią infrastrukturę do prawidłowego działania. W niedługim czasie zestaw Linux, Apache, MySQL oraz PHP stały się synonimem interaktywnej, opartej na bazach danych zawartości internetowej, która była wyświetlana za pomocą przeglądarki internetowej.

Początki były trudne, a nowa technologia zrozumiała dla nielicznych. Jednak bardzo szybko kod źródłowy języka PHP oraz innych aplikacji został ulepszony, ponieważ korzystało z niego wielu użytkowników i twórców. Powstawały nowe standardy oprogramowania służące do konkretnych celów, dla przykładu – phpBB to darmowa aplikacja umożliwiająca stworzenie forum dyskusyjnego. Dzięki prostej instalacji, obsłudze i ogromnym możliwością phpBB jest obecnie jednym z najpopularniejszych skryptów tego typu na świecie. phpMyAdmin to napisane w języku PHP narzędzie służące do łatwego zarządzania bazą danych MySQL.

Otwartość projektu zadecydowała o jego sukcesie. Statyczne strony HTML są uważane za przeżytek, wszystko musi być dynamiczne! Rozpoczęły się poszukiwania profesjonalnych aplikacji PHP o następujących cechach[2]:

  • prosty proces instalacji,
  • modyfikowalność kodu źródłowego,
  • bezpieczeństwo kodu źródłowego,
  • środowisko przyjazne dla użytkowników,
  • prostota w rozszerzaniu możliwości.

Wszystkie te cechy posiadał system Mambo opracowany w 2001 roku przez australijską firmę Miro [3]. System ten w celu przeprowadzenia testów został udostępniony w formie otwartego oprogramowania (ang. open source), co miało znaczący wpływ na jego dalszy rozwój. W 2002 roku produkt został podzielony na wersję komercyjną i ogólnodostępną. Wersja komercyjna nosiła nazwę Mambo CMS, a wersja ogólnodostępna Mambo Open Source (MOS). Dzięki temu projekt nadal mógł się rozwijać, a pojawienie się wersji komercyjnej gwarantowało zwiększony poziom bezpieczeństwa używania systemu oraz gwarancję firmy Miro na rozwijanie się danego produktu. Wersja darmowa miała całą rzeszę użytkowników – programistów, którzy bezustannie wprowadzali poprawki. Ponadto duże przedsiębiorstwa mogły budować na podstawie Mambo swoje własne rozwiązania.

W sierpniu 2005 roku firma Miro zakłada fundację dla projektu Mambo, która wyklucza zespół tworzący oprogramowanie z działalności korporacji. Rozpoczęły się zaciekłe dyskusje na forach społeczności na temat tego posunięcia. Powodem konfliktu była zmiana w licencji Mambo, która wprowadziła kilka istotnych ograniczeń do systemu. Fundacja z dnia na dzień zaczęła tracić zespół twórców oraz olbrzymią, międzynarodową społeczność składającą się z setek tysięcy wściekłych użytkowników. Ciągle trwał rozwój obydwu projektów, a 26 sierpnia Mambo Fundation wypuszcza kolejną wersję Mambo 4.5.3, lecz nie zostaje ona pozytywnie przyjęta na świecie.

Zespół twórców potrzebował nowej nazwy dla swego dzieła. Pierwszego września 2005 roku ogłoszono nową nazwę – Joomla!. Tym razem jednak zespół zapewnił sobie prawa do używania nazwy, a także dał społeczności możliwość zmiany istniejących serwisów stworzonych w Mambo na nową wersję. Praktycznie od razu na nowym forum zarejestrowało się 8 tysięcy użytkowników. Już w niespełna w miesiąc od pierwszego wydania, w październiku, podczas Linux & Open Source Awards w Londynie Joomla! wygrał w kategorii: „Najlepszy projekt Linux/Open Source”.

[1] Graf H., „Joomla! System zarządzania treścią.”, Helion, Gliwice 2007

[2] Linderman M., Fried J., “Przyjazne witryny WWW”, Helion, Gliwice 2005

[3] Graf H., „Joomla! System zarządzania treścią.”, Helion, Gliwice 2007