Neden benim denetleyicisi Symfony'de frontend_dev.php istiyor?

2 Cevap php

http://localhost/frontend_dev.php/1

Neden yukarıdaki istek frontend_dev.php yerine yönlendirildi index.php?

. Ben htaccess okudum:

<IfModule mod_rewrite.c>
  RewriteEngine On

  # uncomment the following line, if you are having trouble
  # getting no_script_name to work
  #RewriteBase /

  # we skip all files with .something
  #RewriteCond %{REQUEST_URI} \..+$
  #RewriteCond %{REQUEST_URI} !\.html$
  #RewriteRule .* - [L]

  # we check if the .html version is here (caching)
  RewriteRule ^$ index.html [QSA]
  RewriteRule ^([^.]+)$ $1.html [QSA]
  RewriteCond %{REQUEST_FILENAME} !-f

  # no, so we redirect to our front web controller
  RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

Ben bunu doğru anlamak ediyorsam istenen dosya yoksa, o frontend_dev.php Yukarıdaki durumda çalıştırılabilir nasıl, index.php yönlendirilir olmalıdır?

2 Cevap

Açıkça URL bu dosyayı istiyor gibi Apache sadece frontend_dev.php kadar hizmet vermektedir - Sen http://localhost/frontend_dev.php/1 URL olarak belirttiniz. http://localhost/index.php/1 üretim denetleyicisi görmek için URL'yi değiştirin.

Yazma kuralları anlaşma only, yani hiç bir ön denetleyicisi söz yok URL'ler ile. http://localhost/1 - Apache frontend_dev.php dosyayı tespit ve ayrıştırmak için hiçbir eşleşen yazma kuralı bulunamadı gibi yeniden yazma kuralları, başlangıçta sağlanan URL için tüm ayrıştırıldıktan demektir.

Basit. frontend_dev.php mevcut olmadığından, bu is idam. Ve hiçbir yönlendirme yapılır.