Динамический виртуальный хост дает 500 ошибок с Laravel

Я пытаюсь создать динамическую среду разработки с виртуальным хостом.
Теперь у меня есть:

<VirtualHost *:80>
UseCanonicalName Off
VirtualDocumentRoot "C:\xampp\htdocs\%1\public"# available aliases to use
ServerAlias *.dev
</VirtualHost>

И это работает для маршрута по умолчанию Laravel:

Route::get('/', function () {
return view('home.index');
});

Но любой другой маршрут даст мне ошибку 500 во многих внутренних перенаправлениях.
Я использую Laravel 5.2 без каких-либо изменений, за исключением маршрутов. Php и некоторых изменений по умолчанию.

Когда я присваиваю домен как VirtualHost, все работает нормально:

<VirtualHost *:80>
ServerName example.dev
VirtualDocumentRoot none
DocumentRoot "C:\xampp\htdocs\example\public"</VirtualHost>

Как я могу исправить эту проблему, чтобы я мог использовать динамические доменные имена, чтобы мне не пришлось добавлять все домены вручную.

Заранее спасибо,
Стефан Франсен

редактировать

Когда я использую это:

http://example.dev/index.php/test

Страница загружается правильно, но это не то, что я хочу.
Итак, как мне удалить index.php из URL? Я проверил, и все модули загружены правильно, это мой .htaccess:

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

RewriteEngine On

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
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>

редактировать

Узнал, что когда я изменился RewriteRule ^ index.php [L] в RewriteRule ^(.*)$ /index.php/$1 [L]

Но я до сих пор не понимаю, почему он работает с vhost, добавленным вручную, а не с динамически сгенерированным vhost, у кого-нибудь есть объяснение этому?

1

Решение

Я думаю, что вы переписать модуль (mod_rewrite) отключен. Проверьте это в apache.conf

Может быть, раздел Pretty URLs может помочь вам.
https://laravel.com/docs/5.1

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]