Zend Framework URL -индекс
-
28-10-2019 - |
Вопрос
Я установил Zend Framework 1.11.5 У меня есть WAMP 2.2 и запуск Windows7.
У меня есть папка (mysite) внутри Apache DocumentRoot ('c:/wamp/www'); 'Mysite' Структура папки:
/application
/controllers
IndexController.php
/views
/scripts
index.phtml
bootstrap.php
/library
/public
/css
/images
/javascript
.htaccess
index.php
Проблема: Если я укажу браузер на 'http: // localhost/mysite/public/' Я вижу свою страницу индекса правильно. Но если я укажу на 'http: // localhost/mysite/public/index/' или 'http:/ /localhost/ejoin2ed/public/index/index 'Я вижу страницу конфигурации Wampserver (я подумал, что это вывод другой страницы, который у меня есть,' index.php 'inside' c:/wamp/www ').
Разве я не должен видеть содержание index.phtml вместо этого ??
Благодарность
Лука
.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);
Решение
Есть проблема с вашим файлом HTACCESS.
Slash at index.php - это проблема
RewriteRule ^.*$ /index.php [NC,L]
Должно быть
RewriteRule ^.*$ index.php [NC,L]