Laravel 5 - nie działa routing

0

Witajcie, napisałem apkę w larwie pod windowsem, działa bez problemu. Po przeniesieniu na debiana mam problemy z routingiem. Żaden z routingów oprócz / nie działa.

Przykładowy niedziałajacy :
Route::get('/', function () {
return view('welcome');
});

Route::get('/test', function () {
return view('welcome');
});

samo / działa natomiast /test już nie.
dodanie index.php a potem routingu tez nie przynosi pomocy.
Czy macie może jakieś pomysły ? Nic znalezionego w googlach nie pomogło.

0

Rodzaj OS-a nie ma raczej na to wpływu w tym przypadku, tylko rodzaj i konfiguracja serwera www oraz virtualnegho hosta. Sprawdź czy jest dokładnie tak samo pod windą i linuxem.

0

Masz to na Apache? Nginx? Skonfigurowales tam wszystko jak trzeba?

0

A pokaż zawartość pliku .htaccess

0

Dziękuję bardzo za odpowiedzi,
Virtualnego hosta nie mam skonfigurowanego ani na windowsie ani na linuxie. Na debianie stoi Apache 2 z php w wersji 7.1.
Baza danych MariaDB natomiast na windowsie jest MySql.
Uprawnienia na var/www są na 777.

php artisan route:list wyrzuca mi :

+--------+----------+----------+------+---------+--------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+----------+------+---------+--------------+
| | GET|HEAD | / | | Closure | web |
| | GET|HEAD | api/user | | Closure | api,auth:api |
| | GET|HEAD | test | | Closure | web |
+--------+----------+----------+------+---------+--------------+

i mój htacess

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # 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]
</IfModule>
0

Ok, jeżeli nie masz wirtualnego hosta, to masz jakąś ogólną domyślną konfigurację serwera - na jakimś adresie musi to pracować, chociażby 127.0.0.1

Możesz mieć taki sam plik htaccess na win i linuxie, ale to nie w tym problem.

0

tak, konfiguracja jest 192.168.33.251/xxx i o ile 192.168.33.251/xxx/ coś wyświetla to 192.168.33.251/xxx/test już nic.

0

Co to znaczy nie działa? Masz jakiś komunikat błędu?

Dziwną masz tą konfigurację.
Zdebuguj sobie jak Laravel widzi Twoje ścieżki.
Wstaw to na samą górę routes/web.php i podejrzyj dowolne adresy.

Route::get('{route?}', function(Request $r){
        return $r->path();
})->where('route', '.*');
0

Najlepiej to zastąp Apacha Nginxem, wszystko tam jest bardziej zwięzłe i przejrzyste, a sam serwer generalnie bardziej wydajny.

1 użytkowników online, w tym zalogowanych: 0, gości: 1