ZF будет отлично работать в Windows.Вам даже не нужно иметь файл index.php в каталоге public.
Если структура вашего проекта выглядит следующим образом, а их хостинг на Windows использует Apache, вы можете просто переименовать вашу общую папку в htdocs (общая общая папка apache):
-- application/
-- library/
-- public/
---- index.php
Ваш хост может не захотеть изменять определенные настройки для общих папок, потому что у них есть автоматизированный скрипт, который делает это для них и затрудняет его изменение для каждой учетной записи, ноВы также можете отредактировать файл index.php для соответствия любой структуре.
Файл stock index.php выглядит следующим образом:
<?php
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
/** Zend_Application */
require_once 'Zend/Application.php';
// Create application, bootstrap, and run
$application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()
->run();
Если вы просто измените определения для APPLICATION_PATH и библиотекив папке set_include_path, тогда у вас не должно возникнуть проблем с использованием ZF со стандартными настройками вашего хоста.
Путь по умолчанию предполагает, что ваш публичный каталог находится в той же папке, что и папки приложения и библиотеки, но это легко изменить с помощьюредактирование путей выше.