Dziś przytoczę kilka cennych uwag związanych z instalacja a właściwie uruchomieniem symfony na facebooku.
Generalnie nie jest to jakaś trudna sztuka ale jest kilka aspektów o jakich należy pamiętać podczas próby wpakowania symfony do okienka facebooka.
Pierwszą ważną sprawą jest sama konfiguracja facebooka wspominałem o niej już wcześniej ale przypomnę tylko najważniejsze rzeczy.
Musimy gdzieś umieścić aplikacje. Wiadomo przecież ze facebook na swoim portalu nie oferuje nam hostingu zatem musimy mieć jakieś miejsce w sieci gdzie przepakujemy sobie pliki symfony.
Jeśli już posiadamy takie miejsce to musimy stworzyć aplikacje w facebooku o tym pisałem na początku wiec jak ktoś nie wie jak to robić to niech przejrzy pierwsze posty. W panelu edycji aplikacji zakładce Facebook Integration podajemy ważny parametr nazwany Canvas URL. Tu znajduje się a w zasadzie zostaje wpisany adres do plików symfony znajdujących się gdzieś na "naszym" serwerze w internecie.
No i przyszedł czas na wybranie opcji wyświetlania naszej strony w portalu, do wyboru mamy FBML albo pływająca ramka. Jeżeli wybierzemy pływającą ramkę to możemy już korzystać z efektów naszej pracy ale przecież my chcemy aby tagi facebooka także były interpretowane ( <fb > ) wiec to nie jest wybór dla nas.
Wybieramy więc FBML. Wszytko pięknie no może poza faktem że po odpaleniu adresu http://apps.facebook.com/MOJA_APLIKACJA/ symfony ruszy ale bez obrazków. Wiemy już dlaczego się tak dzieje wiec szybko podajemy ścieżkę dla obrazków no i wiadomo co dalej czyli udostępnianie cache i tak dalej czyli wszystko co jest w normalnym procesie instalacji.
Niby ok ale jednak coś jest nie tak. No przecież nie możemy sobie pozwolić na to iż user będzie miał dostęp do wszystkich plików naszego frameworka przecież to mogło by być niebezpieczne !!. Zatem musimy wyciągnąć wszystkie składowe frameworka przed tak zwany public_html. Ściślej mówiąc chodzi o przechowanie plików symfony wyżej niż dostępne dla użytkownika foldery i elementy.
W moim przypadku folder który jest dla usera nazywa się public_htm. Zatem wszystkie elementy symfony (foldery) nie wliczając "web" dajemy na tym samym poziomie co public_html. Zawartość folderu web dajemy do public_html. Odświeżamy stronę i? :) i nic :D.
A to dlatego że musimy "powiedzieć symfony iż teraz folder "web" to folder public_html.
Zmiany takiej dokonamy przechodząc do config/ProjectConfiguration.class.php następni edytujemy ten plik i dopisujemy w metodzie setup następującą linie kodu:
$this->setWebDir($this->getRootDir().'/public_html');
To wystarczy do tego aby symfony wiedziało ze teraz to public_html jest właściwym folderem.
Dodatkowo należy pamiętać o zrobieniu linka w folderze public_html do obrazków. Ja to zrobiłem umieszczając w nim link o nazwie "sf" do katalogu 0:/public_html/uploads/.
W layaut należy pamiętać ze niemożna używać tagów html-owych nie możemy mieć <html> czy <body> bo już jesteśmy przecież w takiej strukturze portalu (facebooka)
Słowem końca powiem że jest jeszcze kilka elementów dotyczących prawidłowego postawienia symfony dla facebooka ale więcej informacji napisze kiedy indziej ze względy na ograniczoność czasową jaka mnie ostatnio dotyka :)
Brak komentarzy:
Prześlij komentarz