Подтвердить что ты не робот

Laravel 4.htaccess Не переписывать URL-адреса

Итак, я только что обновился до Laravel 4, и я настраиваю его на новый сервер. Маршрут / по умолчанию работает нормально, но каждый другой маршрут возвращает ошибку 404. При попытке index.php/route я получаю запрошенные данные, поэтому это означает, что .htaccess не работает.

Да, AllowOverride is set to ALL.
Да, я enabled the mod_rewrite module.

Я пробовал следующие 3 комбинации .htaccess:

<IfModule mod_rewrite.c>
    Options -MultiViews
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

и

<IfModule mod_rewrite.c>
   RewriteEngine on

   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d

   RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

и

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

И после перезагрузки сервера и т.д. ни один из них не работает, и я все еще возвращаю ошибку 404.

Примечание. Я использую несколько доменов с одинаковой установкой laravel, поэтому мои общие папки public/site1, public/site2, public/site3. Тем не менее, я направляю публичные пути в эти папки, поэтому я не уверен, что это будет проблемой.

Любые мысли?

4b9b3361

Ответ 1

Я забыл изменить vhosts в httpd.conf. Derp, derp. Добавлено:

<Directory "/var/www/public/site1">
    AllowOverride All
</Directory>

для каждого из файлов vhost сайта, и он работал красиво. Derp derp.