Два (или более) проекта Zend Framework на общем хостинге
Метки: zend framework
Два (або більше) проекти Zend Framework на спільному хостингу
Two (or more) Zend Framework projects on a shared host
| ← 10 редких HTML тегов, о которых вам стоит знать | 80+ вопросов на собеседовании на должность SEO-специалиста → |
Общая хостинговая среда может стать кошмаром, когда дело доходит до веб-разработки PHP, особенно на этапах тестирования. Да, я знаю, что не стоит использовать и оплачивать хостинг, если код еще не готов, но я встречал подобные случаи.
Я постараюсь показать вам, как установить Zend Framework на такое количество проектов, как вы пожелаете на одном и том же веб-пространстве (если квота сервера позволяет вам это сделать) и все эти проекты будут использовать одну и ту же копию ZF.
Предположим, что ваша домашняя директория - /home/heel/. В дальнейшем я собираюсь ссылать на нее как. Создайте в ней следующую файловую структуру:
Убрать подсветку кода
Теперь скачайте, извлеките и загрузите папку «Zend», содержащуюся в файле zip или gz, в директорию “/library” в структуре, которую вы только что создали. Эта копия Zend Framework будет разделена между всеми проектами. Если потребуется, вы cможете обновить версию Zend Framework, просто сменив содержимое.
Помните, что данный пример основывается на том факте, что публичная директория в хостинговой среде будет находиться в “/public_html”. Некоторые провайдеры называют ее “www”, стало быть, в этом примере наша папка будет называться “public_html”. Сделайте соответствующие изменения с учетом ваших потребностей.
Первые папки: “myfirstproject” и “mysecondproject” будут содержать файлы приложений, которые не будут видимы для внешнего мира. Обратите внимание, что в public_html существуют другие две папки с такими же именами. Эти две папки будут содержать загрузочный файл или точки входа для приложения, которое должно быть в открытом доступе, и содержать все рисунки, стили и другие медиа файлы, которые требуются для вашего приложения.
Ваш файл .htaccess в/public_html/myfirstproject/ должен выглядеть следующим образом:
Убрать подсветку кода
Загрузочный файл index.php в той же директории, должен выглядеть так:
Убрать подсветку кода
Это был хак, теперь давайте закончим процесс создания нашего IndexController и его Вида. Первый должен быть размещен в/myfirsproject/application/controllers/IndexController.php:
Убрать подсветку кода
Вид может быть любым, я сделал его таким образом:
Убрать подсветку кода
Вот и все, теперь вы можете начинать строить больше видов, контроллеров и хелперов. Для создания второго проекта, просто следуйте тем же шагам, что и для папки “myfirstproject”. Тем же способом вы можете создать столько проектов, сколько захотите. И все они будут делить одну и ту же библиотеку Zend Framework.
Оригинал: Two (or more) Zend Framework projects on a shared host
Я постараюсь показать вам, как установить Zend Framework на такое количество проектов, как вы пожелаете на одном и том же веб-пространстве (если квота сервера позволяет вам это сделать) и все эти проекты будут использовать одну и ту же копию ZF.
Предположим, что ваша домашняя директория - /home/heel/. В дальнейшем я собираюсь ссылать на нее как
Убрать подсветку кода
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | library/
Zend/
myfirstproject/
application/
controllers/
views/
scripts/
mysecondproject/
application/
controllers/
views/
scripts/
public_html/
myfirstproject/
mysecondproject/ |
Теперь скачайте, извлеките и загрузите папку «Zend», содержащуюся в файле zip или gz, в директорию “
Помните, что данный пример основывается на том факте, что публичная директория в хостинговой среде будет находиться в “
Первые папки: “myfirstproject” и “mysecondproject” будут содержать файлы приложений, которые не будут видимы для внешнего мира. Обратите внимание, что в public_html существуют другие две папки с такими же именами. Эти две папки будут содержать загрузочный файл или точки входа для приложения, которое должно быть в открытом доступе, и содержать все рисунки, стили и другие медиа файлы, которые требуются для вашего приложения.
Ваш файл .htaccess в
Убрать подсветку кода
1 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] |
Загрузочный файл index.php в той же директории, должен выглядеть так:
Убрать подсветку кода
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /** * <root>/public_html/myfirstproject/index.php */ // папка library содержит файлы Zend Framework define('LIBRARY_PATH', realpath(dirname(__FILE__) . '/../../library/')); define('APP_PATH', realpath(dirname(__FILE__) . '/../../myfirstproject/application/')); define('CONTROLLERS_PATH', APP_PATH . '/controllers/'); // library добавляется к include_path set_include_path(get_include_path() . PATH_SEPARATOR . LIBRARY_PATH); include_once 'Zend/Loader.php'; Zend_Loader::registerAutoload(); /** * Наиболее важным шагом является установка директории контроллеров, что указывает на <root>/myfirstproject/application/controllers */ $front = Zend_Controller_Front::getInstance(); $front->setControllerDirectory(CONTROLLERS_PATH); $front->dispatch(); |
Это был хак, теперь давайте закончим процесс создания нашего IndexController и его Вида. Первый должен быть размещен в
Убрать подсветку кода
1 2 3 4 5 6 7 8 9 10 | /** * <root>/myfirstproject/application/controllers/IndexController.php */ class IndexController extends Zend_Controller_Action { public function indexAction() { } } |
Вид может быть любым, я сделал его таким образом:
Убрать подсветку кода
1 2 3 4 5 6 7 8 | <!-- <root>/myfirstproject/application/views/scripts/index.phtml --> <html> <head><title> Это работает!</title></head> <body> <h2>Это работает!</h2> </body> </html> |
Вот и все, теперь вы можете начинать строить больше видов, контроллеров и хелперов. Для создания второго проекта, просто следуйте тем же шагам, что и для папки “myfirstproject”. Тем же способом вы можете создать столько проектов, сколько захотите. И все они будут делить одну и ту же библиотеку Zend Framework.
Оригинал: Two (or more) Zend Framework projects on a shared host
Рейтинг:




<< Вы можете поставить оценку этой статьеПодобные статьи:
Интеграция FCKeditor в Zend_Form
Автоматизированное тестирование с использованием Zend Framework
Zend Framework и перевод
Паттерн кэширования для моделей
Memcached в PHP - просто с Zend Framework