Witam, Zaczynam przygode z php (nie jestem poczatkujacym developerem, mam kilkuletnie doswiadczenie w mobile - iOS i Android), a teraz chcialbym wkoncu nauczyc sie robic proste backendy dla moich apek). Postanowilem zainstalowac na hostingu home.pl Laravel. Niestety juz na poczatku napotkalem trudnosci z instalacja. Polaczylem sie przez ssl i mam problem, aby poprawnie zainstalowac composer'a. Wtedy wpadlem na pomysl zeby polecic komende z sudo i jak sie moznabylo tego spodziewac niestety sie nie udalo. Zadzwonilem wiec na infolinie dla klientow premium i mowie jaki mam problem. Pierwsze co, to uslyszalem: " Co to jest sudo?". Rece mi opadly i gdyby nie to, ze rozmawialem przez sluchawki, to iphone zaliczylbym glebe. Odpowiedzialem grzeczenie, ze w takim razie nie mamy o czym rozmawiac i chce kogos, kto bedzie wiedzial co to "sudo". Niestety konsultatnt bardzo sie upieral, ze chce mi pomoc, tylko musze mu wytlumaczyc co to jest. Wytlumaczylem, a to on, ze musi sie skonsultowac. Po kilku powrotach do mnie i kolejnych konsultacjach okazalo sie, ze nie ma dizycznej mozliwosci aby zainstalowac composera a takze zadnej, powtarza zadnej opcji aby uruchomic Laravel'a na hostingu home.pl. Zmartwilo mnie to troche, bo posiadam sporo uslug na home.pl i nie chce szukac nowego dostawcy. Ale postanowilem poszukac na interencie jakis wskazowek. Znalazlem ogolnie informacje, ze nie poleca sie home.pl itp. Ale zanalzlem tez conajmniej 2 proby instalacji zakonczone powodzeniem. Jednak problemy jakie napotkali autorzy watkow byly zupelnie inne do moich. Ale zauwazylem, tez, ze administratorzy tego forum sa chetni do pomocy To co udalo mi sie zrobic, to zainstalowac Laravel'a lokalnie i przez ftp wrzucic wszystko na serwer. Po szybkim ustawieniu przekierwoania na katalog /public wszystko nawet zadzialalo. Niestety zaczalem kombinowac z przekierowaniem i przestalo i do tej pory nie dziala jak powinno. Zatem prosze o pomoc jak krok po kroku powinienm zainstalowac Laravel 5 na hostingu home.pl. Z gory dziekuje za pomoc!
niestety instalacja lokalna i wrzutka przez ftp jest jedynym rozwiązaniem działającym. trudno powiedzieć co zmieniałeś z przekierowaniami więc trudno na szybko pomóc napisz dokładnie co robiłeś.
@maciek12345 czy udało Ci się rozwiązać sprawę z instalacją frameworka Laravel na naszym hostingu? Spróbuję uzyskać więcej informacji na ten temat u naszych administratorów.
W pierwszej kolejności należałoby zainstalować Composera (https://getcomposer.org/download/). Następnie można przejść do instalacji frameworka Laravel. 1) W public_html tworzymy katalog - np. katalog o nazwie "bin" [mkdir bin] 2) W tymże katalogu tworzymy dowiązanie symboliczne stosownym poleceniem [ln -s /usr/local/bin/php7-cli ~/public_html/bin/php] Po pełnym zlistowaniu katalogu będzie to wyglądało tak: Code: [serwerXXXXXX@serwerXXXXXX 10:31 ~/public_html/bin]$ ls -la total 8 drwxr-xr-x 2 serwerXXXX serwerXXXXXX 4096 Jun 24 10:31 . drwx-x-x 21 serwerXXXX home_pl 4096 Jun 24 09:10 .. lrwxrwxrwx 1 serwerXXXXX serwerXXXXX 24 Jun 24 09:00 php -> /usr/local/bin/php7-cli 3) Usuwamy alias [unalias php] 4) Dodajemy ścieżkę do binarki, korzystając ze zmiennej globalnej PATH Code: [PATH="$HOME/public_html/bin:$PATH"] 5) Zmienna globalna będzie wówczas wyglądać tak: Code: [serwerXXXXXX@serwerXXXXXX 10:35 ~/public_html/bin]$ echo $PATH /home/serwerXXXXX/public_html/bin:/usr/local/pgsql9/bin:/usr/local/pssql55/bin:/usr/bin:/usr/local/bin:/usr/local/git/bin 6) Druga zmienna globalna pozostaje bez zmian: Code: [serwerXXXXXX@serwerXXXXXX 10:36 ~/public_html/bin]$ echo $HOME /home/serwerXXXXX Usunięcie aliasu oraz "korekta" zmiennej PATH po wyjściu z konsoli i ponownym wejściu zostanie anulowana (co sesja trzeba to powtarzać). Rozwiązaniem jest utworzenie w pliku .bash_profile i tam wpisanie 3 i 4 kroku. Proszę o zaznajomienie się z powyższą instrukcją i weryfikacje czy pomoże podczas instalacji wskazanego frameworka Laravel.
Mam problem z Laravelem. Aplikacja Laravela jest w katalogu ~/app, zawartość folderu ~/app/public przekopiowałem do ~/public_html - chodzi głównie o zawartość index.php: Code: require __DIR__.'/../vendor/autoload.php'; $app = require_once __DIR__.'/../bootstrap/app.php'; w ~/public_html/index.php zmieniłem path'e na Code: require __DIR__.'/../app/vendor/autoload.php'; $app = require_once __DIR__.'/../app/bootstrap/app.php'; Są to kroki które nalezy wykonać aby Laravel działał na współdzielonym hostingu (link do tutoriala) - sprawdzone, działa np. na linuxpl.com. Błąd jaki otrzymuje: po wejściu na główną stronę: Code: Warning: require(//../app/vendor/autoload.php): failed to open stream: No such file or directory in /index.php on line 24 Warning: require(//../app/vendor/autoload.php): failed to open stream: No such file or directory in /index.php on line 24 Fatal error: require(): Failed opening required '//../app/vendor/autoload.php' (include_path='.:/:/usr/local/php71/lib/pear') in /index.php on line 24 Próbowałem załączać inne pliki z katalogu ~/app i pliki były znajdowane. Oczywiście autoload.php znajduje się w ~/app/vendor/autoload.php Wykonałem kroki z posta Mariusza, niestety nie pomogło. .bash_profile utworzyłem tu: ~/.bash_profile Proszę o pomoc
Jak dla mnie warto spróbować bez tego '__DIR__' . w require. Albo nawet tak: Code: require '/app/vendor/autoload.php'; $app = require_once '/app/bootstrap/app.php'; Jeśli /app jest w /public_html
Zrobiłem tak, i po wejsciu na www.mojastrona.pl mam wylistowany katalog, natomiast www.mojastrona.pl/public (tutaj jest index.php) mam Too many redirects .htaccess w ~/public_html: Code: <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngine On # Redirect Trailing Slashes If Not A Folder... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] # Handle Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] # Handle Authorization Header RewriteCond %{HTTP:Authorization} . RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] </IfModule> .htacceess w ~/public_html/public Code: <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngine On # Redirect Trailing Slashes If Not A Folder... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] # Handle Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] # Handle Authorization Header RewriteCond %{HTTP:Authorization} . RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] </IfModule>
Wrzuciłem zawartość app do public_html czyli w public_html mam pliki laravela, m.in foldery bootstrap, vendor i public (zawierajacy index.php)
W takim razie wydaje mi się, że domena powinna kierować na /public a w index.php powinno być: Code: require '../vendor/autoload.php'; $app = require_once '../bootstrap/app.php'; Bazuję tylko na podstawie mojego doświadczenia z PHP. Nie korzystałem nigdy z Laravela.
Mały update: w pliku public_html/index.php działa Code: require __DIR__.'/lol.php'; require __DIR__.'/../lol.php'; natomaist nie działa Code: require __DIR__.'/../lol/lol.php'; wywala wtedy Code: Warning: require(//../lol/lol.php): failed to open stream: No such file or directory in /index.php on line 24 Warning: require(//../lol/lol.php): failed to open stream: No such file or directory in /index.php on line 24 Fatal error: require(): Failed opening required '//../lol/lol.php' (include_path='.:/:/usr/local/php71/lib/pear') in /index.php on line 24 czyli moge zarequirowac plik który jest w tym samym katalogu lub niżej, ale nie moge się cofnąć i wejść katalog wyżej
Code: require __DIR__.'/../lol/lol.php'; ^ To na pewno nie zadziała dla pliku umieszczonego w /public_html, bo powyżej nie możesz się odwołać. Sprawdziłem u siebie i poprawnie działa to polecenie. Z katalogu /test, który mam w /public_html wywołuję: Code: require __DIR__.'/../ses.php'; i pik ses.php znajduje się w /public_html i on się wykonuje.