Domanda

Ho installato Zend Framework 1.11.5 Ho WAMP 2.2 ed eseguendo Windows7.

Ho una cartella (mysite) all'interno di Apache DocumentRoot ('C:/WAMP/WWW'); la struttura della cartella 'mysite' è:

/application
   /controllers
        IndexController.php
   /views
      /scripts
        index.phtml
   bootstrap.php
/library
/public
   /css
   /images
   /javascript
   .htaccess
   index.php

Problema: Se pungo il browser a 'http: // localhost/mysite/public/' posso vedere correttamente la mia pagina dell'indice. Ma se indico 'http: // localhost/mysite/public/indice/' o 'http:/ /LocalHost/EJoin2ed/Public/Index/Index 'Vedo la pagina di configurazione di Wampserver (ho pensato che questa è l'output di un'altra pagina che ho,' index.php 'all'interno' C:/WAMP/WWW ').

Non dovrei vedere il contenuto di index.phtml invece ??

Grazie

Luca

.htaccess

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

index.php

//identify the location of th application dir in respect to 
//the botstrap file's location, and configure PHP's include_path to
//include the library directory's location

define('APPLICATION_PATH',realpath(dirname(__FILE__).'/../application/'));
set_include_path(APPLICATION_PATH.'/../library'.PATH_SEPARATOR.
get_include_path());

//give the zend framework the ability to load classes on demand,
//as you request them,rather than having to deal with require() statements.

require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance();

//retrieve the BOOTSTRAP file
try
{
require'../application/bootstrap.php';  
}
catch(Exception $exception)
{
printf('Could not locate bootstrap.php');
exit(1);    
}

//start using the front controller in order to route all requests
Zend_Controller_Front::getInstance()->dispatch();

bootstrap.php

//configure the site environment status

defined('APPLICATION_ENVIRONMENT')
or define('APPLICATION_ENVIRONMENT','development');

//invoke the front controller
$frontController=Zend_Controller_Front::getInstance();

//identify the location of the controller directory
$frontController->setControllerDirectory(APPLICATION_PATH.'/controllers');

//create the env parameter so you can later access the environment
//status within the application

$frontController->setParam('env',APPLICATION_ENVIRONMENT);

//clean up all allocated script resources
unset($frontController);
È stato utile?

Soluzione

C'è un problema con il tuo file htaccess.

La tassanza su index.php è il problema

RewriteRule ^.*$ /index.php [NC,L] 

Dovrebbe essere

RewriteRule ^.*$ index.php [NC,L]
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top