Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Instalacja Composer a później FW Laravel
Forum PHP.pl > Forum > Przedszkole
adamantd
Witam,
być może problem jest błahy ale nie mogę sobie poradzić z tym przez ostatnie kilka godzin. Chcę zainstalować FW Laravel lecz można to zrobić jedynie za pomocą composera. Pierwszy raz mam do czynienia z composerem więc idąc krok po kroku wg kilkunastu totoriali -pobieram ze strony getcomposer.org instalkę pod windowsa. Instaluję, wskazuję plik php.exe w xamppie (c:\xampp\php\php.exe) i po chwili jestem poinformowany o pomyślnie ukończonej instalacji. I właściwie to na tym koniec. Nie mam nigdzie pliku startowego więc po kliknięciu w menu start wpisuję sobie w pole wyszukiwania composer, moim oczom ukazuje się plik composer, klikam w niego oczekując, że pojawi się czarne okienko podobne do cmd. Pokazuje się to okienko oraz od razu znika. Próbuję zatem pominąć tego całego composera. Ściągam z githuba (https://github.com/laravel/laravel) pliki tworzące coś w rodzaju szkieletu laravel, rozpakowuję do htdocs do folderu laravel i wpisuję w przeglądarce adres http://localhost/laravel/public
pojawia się oczywiście błąd

  1.  
  2. Warning: require(C:\xampp\htdocs\Laravel\bootstrap/../vendor/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\Laravel\bootstrap\autoload.php on line 17
  3.  
  4. Fatal error: require(): Failed opening required 'C:\xampp\htdocs\Laravel\bootstrap/../vendor/autoload.php' (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\Laravel\bootstrap\autoload.php on line 17
  5.  


w dokumentacji laravela zarówno ang jak i polskiej jest napisane

"
Jeśli masz już zainstalowany Composer, pobierz najnowszą wersję frameworka Laravel i wypakuj ją do katalogu na swoim serwerze. Następnie z poziomu głównego katalogu projektu wykonaj komendę php composer.phar install (lub composer install), aby zainstalować zależności dla frameworka. Ten proces wymaga, aby na serwerze był zainstalowany Git.

"

Więc widzę, że błąd pojawił się nie bez powodu -nawet jak ściągnę sobie ten szkielet, to muszę użyć composera do instalacji. Więc co mam zrobić teraz, composer pobierałem instalowałem i odinstalowałem już z 5 razy i dalej mi nie działa. Domyślam się, że w zły sposób próbuję go użyć -czy ktoś może poprowadzić mnie w kilku krokach przez to mające pomagać ludziom utrapieństwo?
com
cmd i tam wpisujesz php composer.phar install wink.gif
adamantd
"Nazawa composer.phar nie jest e rozpoznawalna jako polecenie wewnętrzne lub zewnętrzne program wykonywalny lub plik wsadowy" smile.gif
com
bo zjadłem php przed tym wink.gif edytowałem smile.gif

a wgl to czemu nie tak "composer create-project laravel/laravel --prefer-dist" ? odpalasz cmd w katalogu gdzie ma wrzucić Laravel i wpisujesz to i zrobi wszytko za Ciebie wink.gif
adamantd
ok dzięki , wrzuciłem do folderu laravel plik composer.phar i w cmd otworzyłem ten folder i wpisałem php composer.phar install, pobierało się i instalowało przez chwilę, teraz jak w przeglądarce wpiszę http://localhost/laravel/public to pokazuje mi się ładnie obrazek z napisem "You have arrived". Wnioskuję z tego, że zainstalował się poprawnie composer i laravel -problem w tym, że ja póki co zainstalowałem przecież samego composera. Podczas kiedy się instalował w cmd było widać że pobiera się też wiele rzeczy zaczynających się na symfony/...... oraz laravel/...... a w katalogu laravel w htdocs powstał mi folder vendor którego wcześniej tam nie było. O co chodzi? Przecież nie zdążyłem jeszcze zainstalować laravela a on już jakby jest.... smile.gif Czarna magia ten composer hehe
com
composer to jest instalator który pobiera Ci danego fw wraz zależnościami wink.gif co ma pobrać masz w tym pliku composer.json wink.gif
adamantd
chyba to przećwiczę w takim razie usunę wszystko i stworzę jeszcze raz katalog laravel pusty tym razem i wpiszę to co mówisz -pytanie tylko czy mogę to usunąć nie psując czegoś w systemie?
com
Nie bardzo rozumiem co Ci ma zepsuć...
adamantd
Ok już mniej więcej rozumiem, composer pobiera i wrzuca FW do wskazanego przeze mnie folderu. Spróbuję zrobić to jeszcze raz tym drugim sposobem
com
oba działają tak samo ten drugi po prostu pobiera z gita za Ciebie i tworzy katalog sam wink.gif
adamantd
No dobra ale teraz próbując zrozumieć w htdocs w xampp zrobiłem pusty folder laravel2
w cmd wszedłem do tego folderu i wpisałem podaną przez Ciebie drugą komendę i komunikat, że nazwa composer nie jest rozpoznawana itd itd..... więc wrzuciłem do tego pustego folderu plik composer.phar i powtórzyłem czynność i też to samo -dalej nie rozumiem smile.gif

Może w jednym prostym zdaniu -żeby zainstalować laravela muszę stworzyć w htdocs folder np laravel i co do niego wrzucić? composer.phar? czy composer.phar z całym systemem plików z githuba?
com
Nie wiem czy to jest problem związany z tym ze nie masz wrzuconej ścieżki do composer do PATH w windows, byc moze była tam taka opcja przy instalacji nie pamiętam już... bo u mnie wywołanie komendy "composer create-project laravel/laravel --prefer-dist" w katalogu htdocs stworzyło katalog laravel z wszystkimi plikami wink.gif ale skoro nie możesz użyć "composer create-project laravel/laravel --prefer-dist" to jak zrobisz tak jak za pierwszym razem to nie ma różnicy, to tylko miało ułatwić trochę ten proces... wink.gif
adamantd
acha rozumiem smile.gif w każdym razie pojawienie się katalogu vendor to dobry znak. Mam tylko wątpliwości, że skoro teraz z instalacją miałem tyle problemu to czy po przerzuceniu gotowego projektu na serwer zdalny znowu nie pojawią się problemy typu, że trzeba odpalić composer, coś ściągnąć coś zainstalować itd. Dlatego mam jeszcze jedno pytanie, czy teraz taki system plików jaki powstał na localhoście będzie działał po przerzuceniu na serwer zdalny?

edit:

i jeszcze znalazłem sobie jeden system plików na githubie który jest bardziej rozbudowany nazywa się laravel-dev (https://github.com/matmancini/laravel-dev) -czym on się różni od tego który ja zainstalowałem? mój to ten (https://github.com/laravel/laravel)
com
tak, bo composer powstał po to by nie trzeba było się martwić tym który plik w silniku danego fw uległ zmianie wraz z jakimś commitem, ty podajesz mu tylko ze chcesz jak tu np laravel wersji 4.1.* i on taką Ci dostarcza... a potem żeby mięć znów aktualna robisz update smile.gif a on sobie sam pozmienia w plikach co trzeba smile.gif
adamantd
acha czyli composera mogę właściwie użyć tylko raz na początku np do stworzenia odpowiedniej struktury plików oraz pobrania FW oraz jego komponentów a później już nie muszę korzystać z composera. Tworzę projekt w oparciu o dany FW i przerzucam go potem na serw. zdalny i działa po skonfigurowaniu oczywiście wszelkich ścieżek itp. Ok a możesz mi jeszcze podpowiedzieć czy różnią się te dwa systemy plików od siebie?

z poprzedniego posta:

"i jeszcze znalazłem sobie jeden system plików na githubie który jest bardziej rozbudowany nazywa się laravel-dev (https://github.com/matmancini/laravel-dev) -czym on się różni od tego który ja zainstalowałem? mój to ten (https://github.com/laravel/laravel)"
com
Twój to wersja oficjalna a to pewnie prywatny fork wink.gif
adamantd
Pewnie moje pytania były śmieszne hehe ale nie mogłem na to nigdzie znaleźć odpowiedzi smile.gifsmile.gif

Dzięki wielkie za pomoc
Pozdrawiam
com
Kto pyta nie błądzi ^^
Pozdrawiam wink.gif
adamantd
Pewnie za tydzień będę się z tego śmiał ale póki co mam któreś podejście do FW i rozumiem jak na razie tylko Kohana bo jest banalna (ale wszyscy ją odradzają) a chcąc zacząć np laravela (który jest na czasie) mam schody w postaci jakichś composerów smile.gif ale już powinno pójść z górki
com
composer jest w zasadzie przez większość dużych graczy używany wink.gif bo tak samo jest w Zend, SF itd smile.gif ale to wszystko wyjdzie potem w praktyce, bo to akurat w zasadzie nic skomplikowanego wink.gif
adamantd
Niby zend w porównaniu z Laravelem to kobyła (tak piszą) i dużo trudniejszy ale jego instalacja polegała na pobraniu skeletona i wrzuceniu do katalogu vendor biblioteki ZF2 -i działało tylko, że kompletnie nie potrafię czytać dokumentacji bo w przeciwieństwie do dokumentacji Kohana -Zendowska jest dla mnie totalnie nie zrozumiała smile.gif Laravel wydaje się być dużo prostszy od Zenda tylko instalacja (jakby nie można było zrobić alternatywnego sposobu dla composera) np po prostu download gotowca już z vendorem wewnątrz smile.gif Mam jeszcze jedno pytanie w takim razie odnośnie Laravela -chcę, żeby adres strony startowej był po prostu localhost/Laravel a póki co jest localhost/Laravel/public
Przerzuciłem pliki z public do głównego folderu (czyli o jeden wyżej) i zmieniłem ścieżkę w bootstrap/paths.php z 'public' => __DIR__.'/../public', na 'public' => __DIR__.'/..', ale nadal mam błąd

  1.  
  2.  
  3. Warning: require(C:\xampp\htdocs\Laravel/../bootstrap/autoload.php): failed to open stream: No such file or directory in C:\xampp\htdocs\Laravel\index.php on line 21
  4.  
  5. Fatal error: require(): Failed opening required 'C:\xampp\htdocs\Laravel/../bootstrap/autoload.php' (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\Laravel\index.php on line 21
  6.  


czy coś pominąłem?

wszystko już gra -oczywiście w pliku index zapomniałem pozmieniać ścieżki

Pozdro jeszcze raz
ctom
Właśnie o to chodzi by to co ma być publiczne były TYLKO w public\ a cała reszat FW i Twój kod był poza dostępem ogólnym.
Później gdy będziesz to wstawiał na produkcyjny serwer/hosting to skonfigurujesz sobie vhosta by kierował na np. domena.com/public

w plikach index.php nic nie zminiasz... właśnie w bootstrap tylko możesz sobie zmienić ścieżkę gdy Twój hostingodawca ma vhosta kierowanego np. na public_html\ a nie public\

a odnosnie composera to pobaw się tym na spokojnie... akurat w przypadku laravela będziesz widział same plusy, np. w trakcie pracy znjdziesz lepszą lib do modyfikacji zdjęć... wtedy dodajsze jedną linię w composer.json , potem dajesz composer update i masz wszystko czego potrzebujesz, bez myśleniczu czy aby wszystkie zależne pliki wgrałem w odpowiednie miejsca
adamantd
Dzięki ctom właśnie wczoraj w nocy wszystko już załapałem i z powrotem wrzuciłem do katalogu public co w nim wcześniej było (index, htaccess itd) tylko sam public wyciągnąłem po za katalog główny z całą aplikacją (w moim przypadku katalog laravel) i pozmieniałem ścieżki w bootstrap. Doczytałem w dokumentacji i zrozumiałem bo w jednym ze swoich głównych projektów (który chcę przepisać już z pomocą tego FW) też tak mam, że wszelkie pliki z klasami i konfiguracjami mam po za public bo tak bezpieczniej. A co do composera to też już rozumiem -bardzo fajna sprawa jak się okazuje, bo w każdej chwili mogę bez problemu zrobić update biblioteki laravela do najnowszej wersji. I jeszcze jedno zdanie do użytkownika com: udało się zastosować ten drugi sposób -po prostu musiałem zainstalować composera w windowsie a podając polecenie które mi wskazałeś musiałem najpierw wybrać folder w którym ma się zainstalować cały laravael wraz ze stworzeniem szkieletu. Teraz działa już wszystko elegancko. Dzięki Wam jeszcze raz za podpowiedzi i pozdrawiam smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.