Page 1 of 1

Problems with Zend Framework

Posted: Fri Sep 01, 2006 7:05 am
by acidHL
Hi Guys, im trying test out Zend Framework on a Centos server /w XAMPP.

My file structure is as follows:

Code: Select all

/ = web root

/ZendFramework-0.1.5/ ...   <-- Including library.
/controllers/IndexController.php
/index.php
/index_html.php
/.htaccess
My code is as follows:

/index.php:

Code: Select all

<?php
include 'Zend.php';

Zend::loadClass('Zend_Controller_Front');

$controller = Zend_Controller_Front::getInstance();
$controller->setControllerDirectory('controllers');
$controller->dispatch();
?>
/.htaccess:

Code: Select all

RewriteEngine on
#RewriteLog "/opt/lampp/htdocs/sites/ZendTest/rewrite.log"
RewriteRule !\.(js|ico|gif|jpg|png|css|php)$ /index.php

php_value include_path "/opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library"
Despite the fact that /controllers/IndexController.php exists I get this error:

Fatal error: Uncaught exception 'Zend_Exception' with message 'File "controllers/IndexController.php" was not found.' in /opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library/Zend.php:190 Stack trace: #0 /opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library/Zend.php(87): Zend::loadFile('IndexController...', 'controllers', true) #1 /opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library/Zend/Controller/Dispatcher.php(170): Zend::loadClass('IndexController', 'controllers') #2 /opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library/Zend/Controller/Dispatcher.php(136): Zend_Controller_Dispatcher->_dispatch(Object(Zend_Controller_Dispatcher_Token), true) #3 /opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library/Zend/Controller/Front.php(254): Zend_Controller_Dispatcher->dispatch(Object(Zend_Controller_Dispatcher_Token)) #4 /opt/lampp/htdocs/sites/ZendTest/index.php(10): Zend_Controller_Front->dispatch() #5 {main} thrown in /opt/lampp/htdocs/sites/ZendTest/ZendFramework-0.1.5/library/Zend.php on line 190

Does anybody have an ideas? Just FYI i'm following this tutorial: http://www-128.ibm.com/developerworks/e ... zend2.html

Thanks in advance!

Posted: Fri Sep 01, 2006 8:07 am
by Jenk
Use ZF in the docroot, not a subdir within the docroot.

Posted: Fri Sep 01, 2006 8:15 am
by acidHL
I just tried this, and updated .htaccess so that php_include was correct etc and I get an identical error :cry:
Did I break it? :oops:

Posted: Fri Sep 01, 2006 8:29 am
by Jenk
Your include path is working fine, it's your path to the controllers dir that is not working.

however you'll also have problems when trying to use the get vars unless you also modify your .htaccess with:

Code: Select all

RewriteRule !\.(js|ico|gif|jpg|png|css|php)$ /sites/ZendTest/index.php
for the purposes of this tutorial, and for the sake of your own sanity and patience.. just use it in the dam document root.

Posted: Fri Sep 01, 2006 9:36 am
by acidHL
I can't use the main document root of the apache server as this is a test machine testing multiple sites.
I have a virtual host of zend-dev.domain.com pointing to /opt/lampp/htdocs/sites/ZendTest

The rewrite rule surely isnt a problem as no matter what url I go to it gets sent to index.php and index.php gives me the Zend error.


My sanity went out the door years ago :D