EDIT I just realized that I must have had a massive brain fart while writing the abbreviated code sample. See, I'm using smarty. Thus, I'm actually already using Kips's solution, because smarty displays after the session is saved
Ben üzerinde çalışıyorum ve bir çok garip bir sorun haline çalıştırmak bir PHP sitesi için (yoğuşmalı sıkıştırma ve CSS & JS minifying için) bir kaynak yöneticisi uygulama üzerinde çalışıyorum. Bir kullanıcı index.php gider Yani, dosyaları tek bir dosya içine bunları birleştirir ve ya <script src="resource.php?id=123&ext=.js">
veya <link href="resource.php?id=123&ext=.css" />
vasıtasıyla sayfasında dahil bir kaynak yöneticisi nesne eklenir
Ne temelde aşağı kaynar bir dosya yolu erişilen sayfada bir oturumda depolanır ve kaynak sayfasındaki oturumunda okunan olmasıdır. FF, bu mükemmel çalışıyor. IE ve Chrome, öyle değil.
Burada bir çok kısaltılmış kod örneği var:
index.php
<?php
session_start();
//Do a ton of stuff
//Including adding several files to the resource object
//Add the resource links to the head
$smarty->append('headSection','<link href="resource.php?id=<?=$resourceID?>&type=.js" />');
</head>
//Save the resource file which:
// - Outputs the file
// - Saves a reference to it in session
$_SESSION[$resourceID] = $file;
//Let Smarty display
$smarty->display($templateFile);
?>
resource.php
<?php
readfile($_SESSION[$_GET['id']] . $_GET['type']);
?>
IE ve yeni siparişinin ikinci başlatarak Chrome işlevi karşılaştı iken bana gibi, FF sayfası için gerekli kaynaklara herhangi bir yeni istekleri yapmadan önce tüm bir sayfa yanıt bekler olduğunu göründüğü gibi. Bu nedenle, bu hata temelde bir yarış durumu aşağı kaynar.
Herkes bu gerçekten çalıştığını yolu olduğunu teyit edebilir? Ve eğer öyleyse - nasıl etrafında çalışmak istiyorsunuz?