Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM

Autor wpisu: Mariusz "Aiv" Dalewski, dodany: 30.12.2007 16:45, tagi: php, apache, php4, php5

Postanowiłem na własne potrzeby stworzyć pewien szablon konfiguracji PHP opartej o Apache. Podstawowym celem było bezpieczeństwo rozwiązania, a jak udało mi się to zrealizować - życie pokaże. W prezentowanych przykładach pominąłem większość parametrów konfiguracyjnych, a więc podczas tworzenia własnego środowiska na bazie niniejszego artykuły zalecam dostosowanie ich do własnych potrzeb.

Na potrzeby niniejszej konfiguracji użyłem:

  • Linux Slackware w wersji 12. Starałem się nie używać ustawień i pakietów pochodzących z dystrybucji, żeby rozwiązanie było jak najbardziej uniwersalne
  • Apache w wersji 2.2.6
  • FastCGI w wersji 2.4.6
  • PHP w wersji 4.4.7 i 5.2.5

Przyjąłem również kilka założeń:

  • Skrypty PHP powinny być uruchamiane w zamkniętym środowisku (np: chroot() albo open_basedir())
  • Skrypty PHP powinny być uruchamiane z uprawnieniami właściciela pliku/virtualhosta
  • Każdy użytkownik powinien mieć indywidualny folder tmp i folder przechowywania plików sesji
  • Każdy użytkownik sam może wybrać wersji PHP
  • Dla każdego virtualhosta powinien istnieć oddzielny plik php.ini
  • Tworzone rozwiązanie powinno być jak najbardziej uniwersalne. Jednocześnie powinno oferować administratorowi wygodę zarządzania

...

Autor wpisu: Mariusz "Aiv" Dalewski, dodany: 29.12.2007 17:27, tagi: php

W PHP 5 wprowadzono pewne uproszczenie w tworzeniu plików php.ini np.: dla każdego virtualhosta oddzielnie. Zakładając, że mamy swój ulubiony plik php.ini, umieszczamy w nim na początku coś takiego:...

Autor wpisu: Mariusz "Aiv" Dalewski, dodany: 29.12.2007 00:37, tagi: php

Chciałem sprawdzić czy można użyć kilku plików php.ini zakładając, że każdy kolejny plik nadpisuje ustawienia z plików poprzednich. Testowałem PHP w wersji 4.4.7 i 5.2.5 skompilowane jako CGI ze wsparciem dla FastCGI. Podczas konfiguracji użyłem między innymi parametrów:...

Autor wpisu: cysiaczek, dodany: 27.12.2007 17:27, tagi: php

To niewiarygodne, ale po wielu miesiącach udało się skończyć tłumaczenie podręcznika biblioteki Propel w wersji 1.2. Dokumentacja była już "prawie gotowa" od dłuższego czasu, lecz ciągle potrzebne były poprawki, których nikt (łacznie ze mną) nie miał czasu zrobić. Cóż, w święta wziąłem się w garść i przetłumaczyłem ostatni rozdział, naniosłem ostatnie poprawki i oto jest...

Autor wpisu: stormfly, dodany: 27.12.2007 12:49, tagi: php

W swoich aplikacjach bardzo często wykorzystuje mechanizm, który zamienia wartości tablicy na klucze z pustą wartością. Po takiej operacji bardzo łatwo uzupełnić poszczególne pozycje danymi przesyłanymi za pomocą np. $_REQUEST. Początkowo znalazłem dwa sposoby, które...

Autor wpisu: Marcin MySZ Sztolcman, dodany: 22.12.2007 01:36, tagi: php

Twórcy Blip!a wydali wersję 0.02 API, więc zrobiłem co w mojej mocy aby skończyć moją PeHaPową bilbiotekę do tegoż ;) Zmian dużo, do wersji API 0.01 była ona mocno testowa, i w sumie nie jest poprawnie zrobiona, są w niej błędy etc, których nie zamierzam już poprawiać. Wersja 0.02.4 niesie z sobą pełną obsługę protokołu, wykorzystując wszystko co producenci dali, szczegóły w oficjalnej dokumentacji Blip!a.

Szczegóły numeracji biblioteki: pierwszą część stanowi wersja API (w tym wyapdku 0.02), drugą - odsłona samej biblioteki (w tym wypadku 4).

BlipApi.php można używać na dwa sposoby:

  1. wywołując metodę BlipApi::execute(), gdzie pierwszym parametrem jest nazwa komendy do wykonania (spis komend w oficjalnej dokumentacji, jedyną różnicą jest dirmsg zamiast directed_messages), a następnie dostępne parametry metody (szczegóły w pliku klasy i w oficjalnej dokumentacji Blip!a), np.:

    $bapi = new BlipApi ('login', 'haslo');
    $bapi->connect ();
    $bapi->execute ('update_read', null, 'mysz');

    Pobierze ostatnie 10 statusów użytkownika mysz.

  2. wywołując komendę jako konkretną metodą obiektu BlipApi:

    $bapi->update_read (null, 'mysz');

    Powyższe dwa wywołania są sobie równoważne.

Jeśli ktoś znajdzie jakieś błędy, lub ma uwagi co do samej biblioteki, proszę o komentarze tutaj, lub kontakt mailowy: urzenia.net/email. Z góry dziękuję za feedback ;)

Bibliotekę można pobrać/obejrzeć z: repo.urzenia.net/files/blipapi-0.02.phps.

Autor wpisu: cysiaczek, dodany: 20.12.2007 19:05, tagi: php

Od pewnego czasu zastanawiałem się, o ile SPL jest wolniejsze od klasycznych funkcji w PHP. Jeden z ostatnich tematów na forum skłonił mnie do zrobienia małego testu. Do boju stanęły funkcje opendir() i readdir() przeciwko DirectoryIterator i extensionFilter (implementacja FilterItarator).
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.