![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
dodaję temat w tym dziale, ponieważ w dziale z frameworkami, komunikat o tagach nie pozwolił mi na zamieszczenie tematu pomimo iż je dodałem. Jestem początkujący w temacie frameworków i chciałbym spytać jak należy umieścić projekt na serwerze np. hekko Obecnie stronę główną odpalam z adresu na lokalnym serwerze http://localhost/symfony/web/app_dev.php/homepage/ i wszystko działa. Znalazłem kilka podobnych tematów ale niestety wiele nie zrozumiałem ... chodzi mi o to jakie katalogi projektu powinienem wrzucić na serwer, jakich konfiguracji dokonać, oraz jaką ścieżkę podpiąć do domeny. Pozdrawiam |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 6 Dołączył: 26.12.2006 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem jak jest na hekko.
Zamiast ręcznie przenosić pliki za kazdym razem gdy zmieniasz coś w kodzie na komputrze lokalnym, wykorzystaj rsync do synchronizacji plikow z komuterem zdalnym. Na produkcję przenosisz wszystkie pliki, ew. poza plikami jakichś uploadowanych zdjęć w katalogu web. Na komputerze zdalnym domena powinna wskazywać oczywiście na katalog web projektu. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 23.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ja jako początkujący zrobiłem tak, zę postawiłem virual hosta, zaisntalowałem ubuntu 14.
Do tego pełna konfiguracja serwera LAMP, vsftpd i openssh. Następnie zainstalowałem tam projekt symfony. Używam IDE NetBeans i skonfigurowałem go tak, aby móc się łączyć z serwerem virutalnym. Męczyłem się z tym z 2-3dni, ale dużo się nauczyłem (IMG:style_emoticons/default/smile.gif) (Nie zniechęcaj się, bo dopiero za 4 razem dobrze virtualna maszynę skonfigurowałem) @UPDATE Te umiejętności pozwolą Ci na skonfigurowanie płatnego VPS'a (IMG:style_emoticons/default/smile.gif) Ten post edytował TajnyCzek 14.03.2015, 04:20:06 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mariner
Czyli odnosząc się do poniższego adresu który przytoczyłem, podpinam po prostu domenę do katalogu web i tyle? Dodatkow chciałbym spytać ... teraz peojekt jest robiony w środowisku deweloperskim. Co muszę zrobić oraz jak aby odpalić go w środowisku produkcyjnym? Jak rozumiem docelowym na hekko. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 655 Pomógł: 73 Dołączył: 2.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Powiem Ci co zrób.
Odpal projekt lokalnie na produkcjyjnym środowisku (przez app.php, lub ustaw odpowiednio .htaccess). w konsoli: php app/console cache:clear --env=prod php app/console assets:install --env=prod php app/console assetic:dump --env=prod jak działa tobie lokalnie to teraz najważniejsze: usuń folder app/cache/prod (dev tez, nie jest potrzebny) i NIE ODPALAC APLIKACJI. Przenieś pliki na hosting przez ftp. Folder public_http to twój folder web z symfony (zmień nazwe web na public_http lub przenieś pliki odpowiednio) i gra (IMG:style_emoticons/default/wink.gif) apka działa. Czasami trzeba jedynie nadać prawa dla folderu app/cache na hostingu. NA hekko nie musiałem. edit: app_dev.php to środowisko developerskie, app.php to produkcyjne. Developerskie na serwerze hekko itp. domyślnie działać nie powinno. Ten post edytował Forti 14.03.2015, 16:14:50 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 6 Dołączył: 26.12.2006 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Mariner Czyli odnosząc się do poniższego adresu który przytoczyłem, podpinam po prostu domenę do katalogu web i tyle? Zgadza się. Domena powinna wskazywac na katalog web. Dodatkowo sprawdź czy plik .htacess znajdujący się w katalogu web wskazuje jako plik główny na app.php ( wpis: DirectoryIndex app.php). Poprzednio zapomniałem Ci napisać, że na produkcję nie przenosisz pliku app_dev.php znajdującego się w katalogu web ponieważ plik app_dev.php odpowiada za uruchamianie projektu w środowisu developerskim. Dodatkow chciałbym spytać ... teraz peojekt jest robiony w środowisku deweloperskim. Co muszę zrobić oraz jak aby odpalić go w środowisku produkcyjnym? Jak rozumiem docelowym na hekko. Środowisko developerskie wybierasz uruchamiając projekt poprzed plik app_dev.php, środowisko produkcyjne wybierasz uruchamiając projekt poprzez app.php lub wpisując w pasek adresu przeglądarki samą domenę. Plik app.php uruchamiany jest wtedy domyślnie. Dlatego min. tylko to app.php powinien się znaleźć na środowisku produkcyjnym. Zwracam Ci uwagę abyś - o ile to możliwe - dał sobie spokój z ftp i korzystał z rsync, phing, ssh do synchronizacji plików między komputerami. Na dłuższy dystans korzystając tylko z ftp daleko nie zajedziesz a każda synchronizacja to będzie wyzwanie zawsze obarczone ryzykiem błędów. Dodatkowo. Piszesz że lokalnie projekt odpalasz wpisując adres "http://localhost/symfony/web/app_dev.php/homepage/". Zdaje się że powinieneś skonfigurować sobie wirtualne hosty do odpalania swoich lokalnych projektów tak aby Twój projekt odpalało się lokalnie wpisując w przeglądarkę np. myprojekt.my. Inaczej czekają cię min. problemy ze ścieżkami do zasobów, obrazów, css itp. Napisz na jakim systemie działasz to postaram Ci sie pomóc. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Pod windą 7 na serwerze xampp.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 6 Dołączył: 26.12.2006 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Odplamy notepad ( jeżeli edytowanych plików nie można zapisać, notepad należy odpalić z uprawnienami admina). W notepad otwieramy nowy plik "hosts" a szukamy go pod ścieżką C:\Winsows\System32\Drivers\etc\hosts. Do tego pliku dodajmy wpis o treści: 127.0.0.2 myproject.my , zapisujemy plik i zamykamy. Następnie edytujemy plik konfiguracyjny apache httpd.conf (nie wiem gdzie on będzie u Ciebie, zazwyczaj znajduje się w katalogu config w głownym katalogu gdzie zainstalowany jest apache), plik ten powien mieć odkomentowny taki wiersz Include conf/extra/httpd-vhosts.conf a więc odkomentować ten wiersz i zapisać plik. Następnie edytujemy tan plik httpd-vhosts.conf znajuje sie on w GŁOWNYKATLOGAPACHE/conf/extra/httpd-vhosts.conf. Dodajemy na początek wpis:
CODE <Directory C:\wamp\www\> Order Deny,Allow Allow from all </Directory> Gdzie moje "C:\wamp\www\" ma wskazywać na Twój katalog w którym przechowywane są u Ciebie projekty. Następnie na koniec tego pliku dodajemy CODE <VirtualHost 127.0.0.2:80> ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "C:\wamp\www\myproject\web" ServerName myproject.my Action application/x-httpd-php "C:\wamp\bin\php\php5.5.12\php-cgi.exe" </VirtualHost> Gdzie: 127.0.0.2:80 to adres ip naszego projektu, każdy kolejny dodany host będzie odpowiednio miał 127.0.0.3:80, 127.0.0.4:80 , 127.0.0.5:80. Tylko przy dodawaniu nowych hostów należy pamiętać aby dodać stosowny zapis w pliku hosts. DocumentRoot "C:\wamp\www\myproject\web" to ścieżka do katalogu web projektu ServerName myproject.my nazwa serwera korespondująca z nazwą z pliku hosts Action application/x-httpd-php "C:\wamp\bin\php\php5.5.12\php-cgi.exe" ten zapis wskazuje na użycie w tym hoście takiego php. Jeżeli pod danym wirualnym hostem nie będzie dostępny interpreter php to trzeba dodać ten zapis. Ścieżka wkazuje oczywiście na plik wykonawczy php, u Ciebie odpowiednio inny. Restartujesz xampp, wchodzi w przeglądarkę wpisujesz myproject.my lub inny jaki sobie wybrałeś, i jeżeil wszystko dobrze skonfigurowaliśmy projekt odpala się na virtalnym hoście. Taka uwaga, przeglądarka za pierwszym razem moze nie wiedziec że chodzi o żądanie lokalne dlatego wyświetli odpowiedni monit ze lokalnie taki adres istnieje i czy do niego przejść. W razie problemów pisz. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję bardzo - wyprubuję (IMG:style_emoticons/default/smile.gif)
Witam, skończyłem projekt i biorę się za instrukcje, które zawarły się w tym temacie. Chciałbym dodatkowo spytać o polecenie freeze. Gdzies w sieci napotkałem informację że należy zamrozić projekt przed wrzuceniem go na serwer produkcyjny. Tak jest? Jak użyć tego polecenia? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 655 Pomógł: 73 Dołączył: 2.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
http://symfony.com/legacy/doc/book/1_0/en/...or_ftp_transfer
Nie korzystałem nigdy, ale wygląda to na ciekawą opcje. Po prostu wpisujesz Kod $ symfony freeze i wrzucasz przez ftp. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
@Forti
Napisałeś wczesniej że powinienem odpalić projekt poprzez app.php Odpal projekt lokalnie na produkcjyjnym środowisku (przez app.php, lub ustaw odpowiednio .htaccess). Nie mogę sobie z tym poradzić Póki co odpalam poprzez http://localhost/symfony/web/app_dev.php/homepage/ Robię to po raz pierwszy stąd moje jak mniemam ułomne pytania (IMG:style_emoticons/default/smile.gif) w app.php mam
w htaccess
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 40 Dołączył: 20.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Odpalasz w konsoli te komendy które podał Forti. Potem w przeglądarce wchodzisz pod adres http://localhost/symfony/web/app.php/homepage i sprawdzasz czy wszystko działa. Jeśli tak to przenosisz projekt na serwer i to wszystko. Oczywiście folderu cache, tak jak wyżej wspomnieli nie przenoś, wystarczy, że stworzysz nowy, pusty.
@edit Jak widzisz w htaccess masz regułkę DirectoryIndex app.php, która mówi, że po wywołaniu http://localhost/symfony/web ma wykonać app.php, więc nie musisz tego dodawać tak jak jest wyżej. Ten post edytował ikssde 21.04.2015, 11:00:40 |
|
|
![]() ![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Coś jest nie tak:
1. Uruchamiam stronę z adresu http://localhost/symfony/web/app_dev.php/homepage/ <--- działa 2. Wywołuję polecenie: php app/console cache:clear --env=prod Wywołuję polecenie: php app/console assets:install --env=prod Otrzymuję: Installing assets as hard copies Installing assets for Symfony\Bundle\FrameworkBundle into web/bundles/framework Installing assets for Acme\PageBundle into web/bundles/acmepage Wywołuję polecenie: php app/console assetic:dump --env=prod Otrzymuję: The "C:\xampp\htdocs\my\symfony\vendor\symfony\symfony\src\Symfony\Bundle\FrameworkBundle/Resources/views" directory does not exist. Nie wiem skąd wzięła się taka ścieżśka. Być może kiedyś coś namieszałem z podkatalogami? Jak mogę to naprawić? (IMG:http://naforum.zapodaj.net/thumbs/e5d070eb443c.jpg) Ten post edytował kosmos 21.04.2015, 18:08:41 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
composer update?
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
dało radępoprzez całkowite wyczyszczenie katalogu cache projektu.
Teraz strona odpala się z adresu http://localhost/symfony/web/homepage/ Moje kolejne pytanie. Powyżej padło wiele informacji na temat wrzucenia projektu na sewere ale dla mnie sąone niespójne. Na serwerze posiadam taką strukturę (hekko.pl) domains/nazwadomeny.pl/public_html Gdzie i co powinienem teraz wrzucić? UPDATE Tak jak wspomniałem wyżej na hekko.pl otrzymuje taką oto strukturę katalogów domains/nazwadomeny.pl/public_html Jeśli do katalogu public_html wrzucę index.html i odpalę z przeglądarki www.nazwadomeny.pl, odpali mi sie strona z zawartością tego indeksu - zrozumiałe. Wgrałem całą zawartość projektu symfony2 (pomjając katalog web) do lokalizacji: domains/nazwadomeny.pl Następnie zmieniłem nazwę pliku z public_html na web czyli --> domains/nazwadomeny.pl/web i do tego katalogu wrzuciłem zawartość folderu web. W wyniku tek akcji, po wpisaniu do przeglądarki www.nazwadomeny.pl, otrzymuję komunikat: Oops! An Error Occurred The server returned a "404 Not Found". Zapewne nie powinienem zmieniać nazwy katalogu public_html na web .... to oznacza że w projekcie wszędzie powinienem pozamieniać ścieżki z web na public_html (IMG:style_emoticons/default/questionmark.gif) Update: Pomożecie? (IMG:style_emoticons/default/smile.gif) Jakieś wskazówki? |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Jak masz dostęp do ssh i apache to zmień DocumentRoot na inną ściezkę (do web/)
Ewentualnie, wrzucasz wszystko do public_html czyli masz domains/nazwadomeny.pl/public_html/web/ i adres do strony xyz.pl/web, ale w .htaccess wczytujesz web/ jako domyslne i będzie xyz.pl |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 655 Pomógł: 73 Dołączył: 2.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Jak masz strukturę:
twojastrona.pl/public_http to w twojastrona.pl wrzucasz CAŁY PROJEKT po komendzie freeze. Do katalogu twojastrona.pl/public_http wrzucasz zawartość folderu /web z symfony. Czy to na prawdę jest tak trudne że musisz mieć kilka dni problemów z tym? Bez urazy.. ale troche myślenia i zapoznania się chociaż jak funkcjonują podstawowy apache. -,- Ten post edytował Forti 22.04.2015, 08:33:33 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
kpt_lucek wspomniał mi że nie mogę zmienić katalogu web na public_html a ty to sugerujesz .... ?
PS: nie obrażam się, kazdy łapie różne rzeczy raz szybciej raz wolniej. Nie siedze tez nad tym 24h/d bo w pracy przez 9h zajmuje się czymś innym. |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 655 Pomógł: 73 Dołączył: 2.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
Możesz zmienić. W niczym to nie przeszkadza.
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 17 Dołączył: 4.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Nie dziala mi to polecenie symfony freeze (IMG:style_emoticons/default/mad.gif)
otrzymuję 'symfony' is not recognized as an internal or external command, operable program or batch file. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:17 |