Installatie Zend framework
Weet niet of dit de beste plaats is, maar dit was de enige plek waar ze over frameworks praten in de omschrijving.
Mijn vraag: Is het echt noodzakelijk te gaan rond kutten met een .bat bestand om te kunnen werken met het zend framework? Ik zit al die documentatie te lezen en ze hebben het alleen over dat .bat bestand welke je nodig hebt om te kunnen extracten?
Is er geen normale weg; hieronder versta ik dat ik die zooi upload en een index pagina kan aanmaken welke het MCV gedeelte aanroept.
Ik heb het al een keer geprobeerd met zend studie. Echter maakt deze zon rare constructie aan dat mijn hele host over de zeikt raakt met 505 errors.
Enige posts die ik kan vinden over hoe ik het graag wil hebben stammen uit 2008. Met wel te verstaan verouderde zend framework.
Ik hoor hier wel vaker dingen over het zend framework dus hopelijk kan iemand mij uitleggen hoe ik het aan de praat ga krijgen!
Cheers in advanced.
Volgens mij zijn die .bat bestanden alleen maar onderdeel van Zend_Tool, wat vooral bedoeld is om via een interface de configuratie te veranderen (?) en snel template-bestanden voor je controllers en models te maken. ZF zelf is en blijft gewoon PHP code, uploaden, ervoor zorgen dat het ergens staat, bij voorkeur in je include path, en zorgen dat Apache (of PHP, als je cgi gebruikt) de bestanden kan lezen (en uitvoeren?) zou voldoende moeten zijn.
Jelmer, met het uploaden bedoel je dus het gehele Zend mapje uploaden waar alle classes instaan? Hoe bepaal ik die include path? Is dat een folder buiten de root? Zoja kan ik dat zelf aanmaken of moet dat via mijn host? Daarnaast mis ik nog een stuk script waarmee ik het geheel kan aanroepen en het MCV gebeuren start. Heeft iemand daar een voorbeeld van?
En je php classes e.d. (dus ook die van Zend) zet je bij voorkeur altijd buiten de webroot, zodat mensen er niet zomaar via http aankunnen. Bij een goede host kan je dat via de ftp (of ssh) verbinding. Indien niet, dan heb je pech en zul je ze wel in de webroot moeten zetten.
Heb je tutorials over ZF gelezen? Ik meende dat je een bootstrap.php moet maken (of dat dat in iig handig is) en daarin een autoloader aanmaakt, zodat je in ieder geval van het includen van de rest van het framework niet meer hoeft om te kijken. Verder zal je een front-controller moeten aanmaken, en die aan je mvc moeten hangen. En bootstrap.php zal je in index.php moeten includen en daar zal je de frontcontroller moeten starten oid. index.php is immers het bestand waar meestal alles begint.
Maar dit zit toch wel ergens in een examples-mapje wanneer je ZF download? En anders staat het sowieso in een tutorial.
Omdat mijn host op windows servers werkt gebruik ik IsapiRewrite4.ini voor de rewrite rules. Echter, als ik dan de condities upload zoals het in de documentatie staat krijg ik een dikke 404 error.
Iemand hier ook problemen mee gehad?
.htaccess
Code (php)
1
2
3
4
5
6
2
3
4
5
6
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
Misschien handig om mijn structuur erbij te zetten? het mapje wwwroot is mijn root zoals de naam je misschien al heeft doen vermoeden
Gewijzigd op 22/09/2010 22:11:22 door Synaps Framework
hier eens op
.htaccess werkt slechts op apache. Google Synaps Framework op 22/09/2010 21:55:15:
Omdat mijn host op windows servers werkt gebruik ik IsapiRewrite4.ini voor de rewrite rules.
Wat ik hierin zet werkt precies hetzelfde als in een .htaccess bestand.
http://framework.zend.com/wiki/display/ZFDEV/Configuring+Your+URL+Rewriter volgt?
Kan je index.php wel rechtstreeks aanroepen? Wat als je die slash voor index.php weghaalt? Wordt die 404 gemaakt door IIS, of door ZF zelf? Wat als je de handelingen op Gewijzigd op 23/09/2010 00:04:37 door Jelmer -
http://www.site.nl veranderde in een 404.
Echter, heb ik naar je link bekeken. Ik heb de rewrite nu wat veranderd, en nu kan ik de pagina wel openen, maar de rest niks. zoals http://www.site.nl/test/.
Mijn Rewrite is momenteel:
Ik heb de setHttpResponseCode(*); uitgecommenteerd, dus ik neem aan ZF de header niet verzend.
Jelmer. Nee dat kon niet. de root, dus Echter, heb ik naar je link bekeken. Ik heb de rewrite nu wat veranderd, en nu kan ik de pagina wel openen, maar de rest niks. zoals http://www.site.nl/test/.
Mijn Rewrite is momenteel:
Code (php)
1
2
3
4
5
2
3
4
5
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
Ik heb de setHttpResponseCode(*); uitgecommenteerd, dus ik neem aan ZF de header niet verzend.
Je krijgt een witte pagina bedoel je?
Nee ik krijg een 404
Ok. En wat is je error handler tot nu toe?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
class ErrorController extends Zend_Controller_Action {
public function errorAction() {
$errors = $this->_getParam('error_handler');
switch ($errors->type) {
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE:
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
// 404 error -- controller or action not found
//$this->getResponse()->setHttpResponseCode(404);
$this->view->message = 'Page not found';
break;
default:
// application error
//$this->getResponse()->setHttpResponseCode(500);
$this->view->message = 'Application error';
break;
}
$this->view->exception = $errors->exception;
$this->view->request = $errors->request;
}
}
?>
class ErrorController extends Zend_Controller_Action {
public function errorAction() {
$errors = $this->_getParam('error_handler');
switch ($errors->type) {
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE:
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
// 404 error -- controller or action not found
//$this->getResponse()->setHttpResponseCode(404);
$this->view->message = 'Page not found';
break;
default:
// application error
//$this->getResponse()->setHttpResponseCode(500);
$this->view->message = 'Application error';
break;
}
$this->view->exception = $errors->exception;
$this->view->request = $errors->request;
}
}
?>
Toevoeging op 23/09/2010 11:45:02:
Maar krijg je die 404 van apache of gaat het wel door het ZF?
Route, controller of action?