PHP5 ile XAMPP sorunlar

3 Cevap php

Benim web sitesinde PHP5 etkin ve benim host PHP5 çalışması için htaccess dosyaları için aşağıdaki eklemek için bana ihtiyacı var.:

AddHandler application/x-httpd-php5 .php5 .php4 .php .php3 .php2 .phtml
AddType application/x-httpd-php5 .php5 .php4 .php .php3 .php2 .phtml

Yerel, ben kod geliştirmek için XAMPP çalıştırıyorum, ama XAMPP yukarıda. Htaccess dosyası ile çalışmak istemiyor.

Ben XAMPP php5 tanımaması ile ilgili bir sorun olduğunu düşünüyorum (ama ben onun yerine "application/x-httpd-php5" of "application / x-httpd-php" kullanırsanız php tanımıyor)

Bunu nasıl çözerim? Ben onlar benim host ile çalışmak yani. Htaccess dosyaları yukarıdaki gibi bakmak gerekir, ama ben bir değişiklik yapmadan aynı dosyalarla yerel olarak çalışmak için XAMPP gerekir!

3 Cevap

Apache <IfDefine> directive. You can use it to hide AddType Kendi sunucudan vardır:

<IfDefine !MyServer>
AddType application/x-httpd-php5 .php5 …
…
</IfDefine>

Ve ile apache başlar

apachectl -D MyServer

Yani, zor bir yerde ayni konum; ideal web host konuşma sizin htaccess dosyaları ekstra yapıştırmak koymak için gerekmez. Çok iyi XAMPP bilmeden, ben belirli bir çözüm teklif edemez, ama size bazı öneriler verebilir:

  1. Sizin host application/x-httpd-php5 kullanan PHP özel bir derlenmiş sürümünü çalıştıran; bu muhtemelen don't bunu yapmak istiyor, PHP kendiniz kurmak veya uygun şekilde yapılandırılmış SAPI katmanı olan özel bir yapı bulmak için tamamen mümkün iken.

  2. Ev sahibi htaccess dosyalarını veriyor ne kadar rotadan bağlı olarak, sadece şartlı PHP geçiştirmek kod çalıştırmak için veya kullanmak mümkün olabilir. Ben test etmedim, ve host bu işlevi devre dışı bırakmış olabilir. Ayrıca, karşı sınamak için uygun koşullu bulmak zorunda kalacaktır.

  3. Benim en sevdiğim cevap o kadar emmek olmak ve ayrı htaccess dosyaları korumak olacaktır. Web siteme bunu; Ben "küresel" bildirimleri ve gerçek üreten bir htaccess.php dosyası içeren bir. Htaccess.in dosyası var. Konfigürasyonuna göre htaccess dosyası, vs

Umut olur.

Başka basit bir çözüm: change the config file name evde. Örneğin httpd.conf:

<Directory />
    #existing stuff here...
    AccessFileName .htaccess.home
</Directory>

Şimdi ev sunucusu ". Htaccess" dosyaları yok sayacaktır. Sen ". Htaccess.home" dosyaları ile konfigüre edeceğiz.