Eğer bir alt siteyi değiştirmek ne Zend Framework yönlendirme tabloları olur?

3 Cevap php

Herkes sizin Zend sitenizi de değiştirdiğinizde tam olarak ne foo.com/ foo.com/subfolder/, diyelim ki, ne olur biliyor mu? Ben fark o sonları yönlendirme ve ben kullanarak değilim front_controller.setBaseUrl() düzgün ya da hiç etkisi yoktur ya. Ben bu konuda Zend yerinde herhangi bir resmi belge bulamadı.

3 Cevap

Sorunun en muhtemel nedeni sizin .htaccess dosyasındaki RewriteBase parametresini ayarlamanız gerekir olmasıdır.

Lütfen yeniden yazma kuralları, bu gibi bir şey varsayarsak:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Ve subfolder alt klasör içine sitenizin hareketli varsayarak, sadece RewriteEngine on altında, sizin yeniden yazma kuralları aşağıdaki satırı ekleyin.

RewriteBase /subfolder

Sizin tam yeniden yazma kuralları, böylece gibi görünmelidir:

RewriteEngine on
RewriteBase /subfolder
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

PS: Ön Kontrol / İstek Object / Router zaman% 99 doğru baseUrl automagically belirleyecektir. not açıkça belirlemeyi deneyin. Lütfen yeniden yazma kuralları üzerinde değişiklikler işe yaramazsa, ancak o zaman geçersiz kılmak için çalışırlar.

Sen, herhangi bir zamanda baseUrl saptanmıştır aşağıdaki ile isteği olarak alabilirsiniz:

var_dump(Zend_Controller_Front::getInstance()->getBaseUrl());

Sen emin / newfolder / config tüm set_include_path tablolara prepend yapmak gerekir. Sonra setBaseURl düzgün çalışması gerekir.