Neden başlık bir iç sunucu hatası neden () nedir?

2 Cevap php

Ben bu hataya neden olabilir anlamaya olamaz. Benim Apache log sayfasında ilgili erişim günlüğü ya da hata günlüğünde herhangi bir hata kaydı değil, ama ben header() uncomment her nasılsa ben bir 500 Internal Server Error hatası olsun. İçerik header() denir önce çıkılır zaman PHP'nin ölümcül hata geliyor olamaz, bu 500 de olur neden olmaz?

header("Location: /offices/page-".ceil($cache->size() / 15));

Ben test $cache->size() ve dizenin sonuna bir 2 ekler ve yönlendirmek gerekir bu yüzden, 22 dönüyor. I ob_start() header() önce aradım var mı ama ben doğru ondan önce ob_end_clean() arama çalıştı ve hala hiçbir şey yapmadı ...

Hatta dosyanın başında header("Location: /offices"); koyarak denedim ve hala bana bir 500 verir.

2 Cevap

Script başlığında () çağrısı sonrasında yürütmek devam ediyor. Bunu hemen sonra exit; koymak gerekir. Bu olsa, bir 500 hatası neden olmamalıdır.

Edit: Anlaşılan bu çalıştı - senin sorunun Sayfanın altındaki bazı ilgili kod muhtemelen anlam?

Bir tam oluşmuş bir URL kullanmayı deneyin:

header("Location: http://{$_SERVER['HTTP_HOST']}/offices/page-".ceil($cache->size() / 15));