Yii kontra hosting w AZ

Miało być prosto. Dokumentacja Yii przekonuje, że wystarczy skopiować pliki na serwer, uruchomić jeden z nich za pomocą wiersza poleceń, podając odpowiednie parametry i już mamy szkielet aplikacji. Kuszące, bo w Kohana trzeba strukturę katalogów aplikacji sobie ręcznie stworzyć. Strona, którą muszę uruchomić ma powstać na serwerze hostowanym przez AZ w niezbyt wypasionej opcji. Sęk w tym, że oni nie dają możliwości uruchomienia czegokolwiek z wiersza poleceń. Telnet niedostępny i już, SSH tylko w wyższych pakietach hostingu. No cóż, trudność, ale nie do pokonania.

Przecież można projekt założyć na serwerze lokalnym a potem gotowca wrzucić na miejsce docelowe. Ja ciągle niepoprawna politycznie jestem i mimo iż robiłam podejście do Linuksa nadal tkwię obydwiema nogami w systemie Windows. Pakiet XAMPP umożliwia mi pracę lokalną jeśli tego potrzebuję.

Przygotowanie katalogów

Pozwolę więc sobie napisać modyfikację oryginalnej instrukcji dla tych którzy chcą, tak jak ja, stworzyć szkielet aplikacji Yii w Windows. W katalogu przeznaczonym dla tego projektu (mniejsza o nazwę i lokaliację) stworzyłam sobie podkatalog public_html w którym docelowo chce mieć tylko plik rozruchowy aplikacji (no i oczywiście niezbędne elementy layoutu) oraz podkatalog framework, gdzie będę chciała umieścić cały silnik. Docelowo ten podkatalog na serwerze nie będzie dostępny z sieci. W podkatalogu framework, założyłam podkatalog yii, gdzie umieściłam pliki frameworka. W skrócie, struktura katalogów wygląda następująco:

  • framework
    • yii
  • public_html

XAMPP w akcji

Pora teraz na uruchomienie automatu go generowania szkieletu aplikacji. Wystarczy uruchomić xamppa, a w nim Apache a następnie Shell.
xampp

W oknie konsoli trzeba przejść do katalogu projektu i uruchomić polecenie zgodnie z instrukcją podaną w dokumentacji Yii. Warto zwrócić uwagę na kierunek ukośników.
shell

Skrypt czeka na potwierdzenie operacji a następnie tworzy szablon projektu. Teraz już tylko wystarczy przenieść niektóre katalogi do innej lokalizacji i zmienić ścieżki w pliku rozruchowym i po krzyku.

Porządkowanie katalogów

Automat wszystkie pliki aplikacji umieszcza we wskazanej w linii poleceń lokalizacji, czyli w tym przypadku w katalogu public_html. Powstaje tam następująca struktura:

  • assets/ – zawiera opublikowane zasoby
  • css/ – zawiera pliki CSS
  • images/ – zawiera pliki obrazów
  • themes/ – zawiera motywy aplikacji
  • protected/ – zawiera chronione pliki aplikacji, czyli wszystkie kontrolery, modele, moduły itp
  • index.php – skrypt startowy aplikacji internetowej
  • index-test.php – plik skryptu startowego dla testów funkcjonalnych

Całą zawartość katalogu protected przeniosłam do katalogu framework. Następnie w pliku rozruchowym index.php (a także jeśli ktoś potrzebuje w index-test.php) należy zmienić ścieżkę z:

$config=dirname(__FILE__).'/protected/config/main.php';

na:

$config=dirname(__FILE__).'/../framework/config/main.php';

I gotowe DEMO

2 komentarze do wpisu „Yii kontra hosting w AZ”

  1. Witam
    Szczerze, to po co to wszystko, nie widzę sensu w przenoszeniu protected do framework, bo co to zmieni ? poza tym nie pisałaś nic o zabezpieczeniu katalogów przez htaccess po twojej przeprowadzce. Poza tym jeżeli mam projekt w IDE to zawsze izoluję framework od projektu, nie potrzebuję tysiąca komunikatów o TODO. Zrobiłem dużo projektów na Yii, naprawdę nie warto komplikować sobie życia. Powodzenia

Leave a Reply

%d bloggers like this: