Sorgulama parametrelerini SSI'ya aktarma konusunda sorun yaşıyorum. SSI'm neden çalışmıyor?
Başka PHP içinde bir PHP dosyası dahil çalışıyorum: (yukarıdaki satırı içeriyor) benim hellotest.php belge kök klasörü bulunuyorsa<!--#include virtual='/ssi/test.php?x=hello' -->
Bu, düzgün yürütür.
Bununla birlikte, template.phtml öğesinin (aynı zamanda /public_html/hellotest.php) (aynı proje için Zend Framework'ü kullanıyorum) içinde aynı şeyi yapsam, test.php çağrılır ve herhangi bir sorgulama olmadan çalıştırılır. parametreler (bu durumda x = merhaba). Zend_framework şablonlarimdan hiçbir sorgu parametresi test.php'ye aktarılmamıştır.
Bu, zend framework'ün .htaccess kullandığı yolla ilgili bir şey var mı?
SetEnv APPLICATION_ENV development
AddOutputFilter INCLUDES .php
RewriteEngine On
RewriteRule (.*/?)(.*css)$ combine.php?type=css&files=$1$2 [NC,L]
RewriteRule (.*/?)(.*js)$ combine.php?type=js&files=$1$2 [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
DÜZENLEME: İşte (/public_html/.htaccess Web köküne): Benim .htaccess dosyalarının bir kopyasıdır Geçenlerde URL'den alınan SGK içine parametreleri geçirir ki öğrendim. Yani eğer tarayıcımda http://www.test.com/controller/action?param1=something yazıyorsa, aslında param1'i SSI'ya geçirecek, ancak SSI hattında sahip olduğum paramları tamamen yok sayacak. ... kimsenin tecrübesi var mı?
EDIT2 - Tim Fountain'a yanıt olarak: doğru, test.php adresim public_html/ssi/test.php dizinindedir. Ancak, ZF tarafından her zaman ayrıştırılan bir ZF şablon dosyasından arıyorum. "ZF tarafından ayrıştırılmadığı sürece" olarak adlandırdığınız şey. Benim test.php'de basit çıktı var_dump ($ _ GET) - başka bir şey bu php dosyasında, sadece bir satırda. Ve bunu ZF şablon dosyasından aldığım şekilde: <!--#include virtual='/ssi/test.php?x=hello' -->
. garip olan şu ki, eğer http://mydomain.com/controller/action/?x=hi_there yazıyorsam, bu X paramimi SSI satırına iletecek ve orjinalde ne varsa yazdım (x = merhaba). URL’de hiçbir şey iletmezsem, SSI’ya hiçbir şey geçmez.
Sadece PHP kullanamazsınız herhangi bir sebep içerir? php $ x = 'merhaba'; 'test.php'?> –
evet, SSI önbellek mekanizmalarına ihtiyacım var ... işlev bu durumda bana yardımcı olmaz. – Gotys
Apache'niz PHP betikleri olarak .phtml dosyalarını işlemek için yapılandırılmış mı? –