2015-12-31 13 views
5

laravel PHP framework'ü kullanmaya çalıştığımda, onu /home/usr/proj/laravel adlı bir direk içine yerleştirmeye çalışıyorum, ancak kamusal html laravel'in yerleştiğini biliyoruz /home/usr/proj/laravel/public, bu nedenle benim sorunum, mysite.com/laravel/ veya mysite.com/laravel aracılığıyla eriştiğimde, aslında laravel/public/index.php konumuna yönlendirildiğimiz şekilde nginx ayarının nasıl yapılacağıdır.nginx site ile bir altdizin içinde eşleşmeyen url

Ayrıca, laravel ait görevlisi tarafından önerilir nignx bir kural olduğu görülmektedir, url güzel görünüyor yapmak için

location/{ 
     try_files $uri $uri/ /index.php?$query_string; 
} 

nasıl durumda kullanabilirsiniz ?


GÜNCELLEME

Aşağıdaki kod benim için çalışıyor görünüyor (ama bana RouteCollection.php hattı 145 yılında NotFoundHttpException hata vermek:, belki benim yönlendirici ayarından kaynaklanır)

location /laravel{ 
    root /home/usr/proj/laravel/public; 
    index index.php index.html; 
    try_files $uri $uri/ /laravel/public/index.php?$query_string; 
    } 
+0

ile yaptığımızdan beri Laravel 5'in nasıl yapılandırıldığından emin değilim. Try_files $ uri $ uri//index.php?$query_string; –

+0

Ayrıca işe yaramaz gibi görünüyor. –

+0

RouteCollection'dan bir hata görüyorsanız - bu sorun zaten kendiniz çözdüğünüze benziyor :) geri kalanlar yollar.php içinde –

cevap

0

Güncelleştirmeniz ile ilgili olarak, orijinal try_files sözdizimini saklamanız gerektiğini düşünüyorum.

Konum /laravel olarak ayarlandığından ve kök ortak klasörde olduğundan,
try_files $uri $uri/ /index.php?$query_string; 

. Halihazırda yazılan yol, diskte /home/usr/proj/laravel/public/public/index.php dosyasını aramaya başlar.

Ayrıca, URL'nizin /location bölümünü içerecek şekilde uygulama URL'nizi yapılandırmayı da kontrol etmelisiniz. Deneyim Laravel 4.

+0

Kökten çok takma ad kullanıyor olmalıyız –