2013-06-04 31 views
13

Bu yüzden Laravel 4'e yeni sürüme geçtim ve işleri yeni bir sunucuda yapıyorum. Varsayılan / rotası iyi çalışıyor, ancak diğer her yol bir 404 hatası veriyor. index.php/route'u denerken, istenen verileri aldım, yani .htaccess çalışmıyor demektir.Laravel 4 .htaccess URL'leri Yeniden Yazmıyor

Evet, AllowOverride is set to ALL.
Evet, ben enabled the mod_rewrite module.

<IfModule mod_rewrite.c> 
    Options -MultiViews 
    RewriteEngine On 

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

ve:

<IfModule mod_rewrite.c> 
    RewriteEngine on 

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

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

ve:

aşağıdaki 3 .htaccess kombinasyonları denedi

Options +FollowSymLinks 
RewriteEngine On 

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

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

Ve bir sunucu yeniden başlatıldıktan sonra, ve benzerleri, Hiçbiri çalışmıyor ve hala 404 hatası veriyor.

Not: Aynı laravel yüklemesiyle birkaç etki alanı kullanıyorum, bu nedenle ortak klasörlerim public/site1, public/site2, public/site3. Ancak, bu klasörlere giden genel yolları yönlendiriyorum, bu yüzden sorun olacağını emin değilim.

Herhangi bir düşünce?

+0

Sunucunuz nedir? xAMP, Apache? Yeniden yazma modülünü yüklediniz mi? Httpd.conf: 'LoadModule rewrite_module modules/mod_rewrite.so' –

+0

@AlexandreButynski Apache'nizdeki bu satırı kontrol edin. Evet, yeniden yazma modülünü yükledim. Bunu yukarıda belirttim. Ve AllowOverride Hepsidir. Neye sebep olduğuna dair hiçbir fikrim yok. –

cevap

20

httpd.conf dosyasındaki vhost'ları düzenlemeyi unuttum. Derp, derp. Eklendi: Sitenin sankonun dosyaların her biri için

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

ve o güzel çalıştı. Derp derp.