Dahil üzerine Uyarı: Doğru Yolda Dosya Bulamıyor?

2 Cevap php
Warning: include(/2008/2009/assets/inc/base/error.inc.php) [function.include]:
failed to open stream: No such file or directory in
C:\Program Files\Apache Group\Apache2\htdocs\2008\2009\assets\inc\base\header.inc.php on line 82

Ben bir WAMP kurulumunda bir dosya dahil yukarıdaki hatayı alıyorum. Windows C :/ 2.008 ziyade demek / / 2008 yorumlamak mümkün mü gerçek http://localhost/2008?

Biraz daha ayrıntı vermek gerekirse, benim tüm site üzerinde kullanmak KÖK olarak tanımlanan bir sabit var. (Bu durumda KÖK / 2008/2009 / ayarlanır). Ben, resimler, bağlantılar, css dosyaları için yollar önce KÖK kullanmak / CSS ve bağlantıları düzgün localhost/2008/2009 ölçeklendirme vb dosyaları gerektirir içerir, ancak bulunamadı olmamak dosyaları içerir.

Herhangi bir yardım büyük mutluluk duyacağız.

PS php.ini olarak tanımlanan yolu dahil vardır:

include_path = C:\Program Files\Apache Group\Apache2\htdocs"

Update

I Madde-display.php? Id = x için ürün / x değiştirmek için yeniden URL kullanarak edildi klasörlerde bu değişiklik KÖK kapalı inşa edilmiş budur. Bu tarayıcıda (imgs, bağlantılar, vb) kusursuzca tüm iş gösterildi şey yapılmış, ancak madde-display.php aşağı aslında bir klasör olduğu gibi iç bir şey, işe yaptı. Ben bir öğe klasöre öğe display.php taşındı ve bu istemci tarafı ve sunucu tarafı hem eylemleri tutarlı yaptı.

2 Cevap

Mutlak bir yol yerine, göreli bir yol kullanarak ediyoruz.

Eğer dahil yolunu kullanarak yapıyorsanız, ilk dizinde veya ./ ile başlayan göreli bir URL belirtmeniz gerekir. Btw, konum projenizde değiştirmek için gitmiyor bir dosyada dirname(__FILE__) gibi bir şey ile veya sunucu içine bakarak yolunu tanımlamak gerekir. Aksi takdirde, başka bir sunucu üzerinde uygulama yüklemek gereksiz yere karmaşık olacak.