Fat-Free framework na WAMP server. Błąd, pusta strona, framework nie działa po rozpakowaniu. Co za badziew!

Posługując się WAMP serwerem postanowiłem wypróbować mikro-freamework Fat-Free. Głównie ze względu na to, że chciałem napisać prostą i małą aplikajcę, a Cake czy Symphony to kobyły. Poza tym F3 oferuje routing, templatki, mini-ORM i ogólnie takie jakby MVC. Wiadomo, narzędzie musi być dostosowane do zadania, proste zadanie – proste narzędzia.

Ściągnąłem, rozpakowałem do katalogu, odpaliłem i nie działa. Wyświetla mi się pusta strona. Zaglądam do katalogu, do index.php i prubuję debugować. I do odpalenia metody

F3::run();

wszystko śmiga, później nic sie nie wyświetla, pusta strona. Próbuję ustawić wewnętrzny debugger frameworka:

F3::set('DEBUG',3);

Nadal nic się nie wyświetla, pusta strona. Przeglądam dalej plik index.php i znajduję to co powinno sie wyświetlić:

echo Template::serve('welcome.htm');

Pomyślałem, że może plik welcome.htm jest pusty, więc zaglądam do niego i widzę pełną soczystej treści stronę, która powinna być wyświetlona. Dalej to samo nic się nie wyświetla, pusta strona, a ja nie wiem o co chodzi.

Zaglądam w źródło strony może tam mnie olśni, niestety nic, źródło strony to samo, pusta strona. Porzucam F3 na rzecz Flight (http://flightphp.com/), jest jeszcze bardziej micro i niestety nie ma żadnego wsparcia dla Baz Danych, trzeba to sobie dopisać.

Po jakimś czase potrzebuję napisać aplikację intensywnie wykorzystująca bazę danych i przydałby mi się ten mini-ORM. Przyglądam się więc jeszcze raz F3. tym razem bardzo dokładnie. I przeglądając całe źródło strony linijka po linijce rozwinąłem to co pominiąłem wcześniej. Zwiniętą linię kodu w której pobierany jest plik CSS.

<style type="text/css">
	{{ Web::minify('ui/',array('style.css'),FALSE) }}
</style>

i tu znajduje się wydruk z debuggera i poszukiwany od stuleci błąd:

<style type="text/css">
<html>
 <head>
  <title>500 Internal Server Error</title>
 </head>
 <body>
  <h1>Internal Server Error</h1>
  <p><i>PHP extension sockets is not enabled</i></p>
  <p>#0 ***/fat3/lib/base.php:1749 F3::error(500,'PHP extension sockets is not enabled')<br />

a jego rozwiązanie mega-banalne. Wystarczy włączyć w PHP moduł:

php_sockets

I jest pięknie. Wszystko się wyświetla, nie ma pustej strony, a ja mogę korzystać z mini-ORM 🙂

Leave a comment

Your email address will not be published. Required fields are marked *