Bir PHP dosyası üzerinden mod-rewrited zaman JavaScript ayrıştırmak değil mi?

0 Cevap php

Ben şunları yaparsanız (bu JavaScript dosyası gerçek / doğrudan yolu):

<script href="http://localhost/tpl/blue/js/functions.js" type="text/javascript"></script>

Bu çalışıyor ve JavaScript ayrıştırır - onun çok demek gibi.

Ancak ben cache.php için. Htaccess (önbelleğe kolları) aracılığıyla tüm JavaScript dosyalarını yeniden yazıyorum neden olan (bazı önbelleğe yapmak aswell) JavaScript dosyasının yolunu kısaltmak isteyen.

The .htaccess contains the following:

<IfModule mod_rewrite.c> 
RewriteEngine On

RewriteBase /

RewriteRule ^js/(.+?\.js)$ cache.php?file=$1 [NC] 
</IfModule>

cache.php contains the following PHP code:

<?php

if (extension_loaded('zlib')) {
    ob_start('ob_gzhandler');
}

$file = basename($_GET['file']);

if (file_exists("tpl/blue/js/".$file)) {
header("Content-Type: application/javascript");
header('Cache-Control: must-revalidate');
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 3600) . ' GMT');

echo file_get_contents("tpl/blue/js/".$file);

}

?>

and I'm calling the JavaScript file like so:

<script href="http://localhost/js/functions.js" type="text/javascript"></script>

Ama JavaScript ayrıştırmak değil yapıyor? (Ben işe yaramazsa sayfasında daha sonra functions.js dahilinde işlevleri ararsanız) - ya cache.php veya yeniden yazma kuralı ile ilgili bir sorun bu kadar onların? (Kendisi tarafından dosya çalışıyor çünkü).

Ben erişmek Eğer rewrited dosya> http://localhost/js/functions.js herhangi bir JavaScript dosyası gibi, doğrudan o, JavaScript kodunu basar - yüzden ben yanlış yapıyorum ne kadar kafam karışık ...

PS: I've tried changing the mime/content-type to text/javascript, aswell as clearing the browser cache - but no luck.

Tüm yardım takdir! :)

0 Cevap