Два (или более) проекта Zend Framework на общем хостинге

Метки: zend framework

Два (або більше) проекти Zend Framework на спільному хостингу Два (або більше) проекти Zend Framework на спільному хостингу
Two (or more) Zend Framework projects on a shared host Two (or more) Zend Framework projects on a shared host

Общая хостинговая среда может стать кошмаром, когда дело доходит до веб-разработки PHP, особенно на этапах тестирования. Да, я знаю, что не стоит использовать и оплачивать хостинг, если код еще не готов, но я встречал подобные случаи.
Я постараюсь показать вам, как установить 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, в директорию “/library” в структуре, которую вы только что создали. Эта копия Zend Framework будет разделена между всеми проектами. Если потребуется, вы cможете обновить версию Zend Framework, просто сменив содержимое.
Помните, что данный пример основывается на том факте, что публичная директория в хостинговой среде будет находиться в “/public_html”. Некоторые провайдеры называют ее “www”, стало быть, в этом примере наша папка будет называться “public_html”. Сделайте соответствующие изменения с учетом ваших потребностей.
Первые папки: “myfirstproject” и “mysecondproject” будут содержать файлы приложений, которые не будут видимы для внешнего мира. Обратите внимание, что в public_html существуют другие две папки с такими же именами. Эти две папки будут содержать загрузочный файл или точки входа для приложения, которое должно быть в открытом доступе, и содержать все рисунки, стили и другие медиа файлы, которые требуются для вашего приложения.
Ваш файл .htaccess в /public_html/myfirstproject/ должен выглядеть следующим образом:
Убрать подсветку кода
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
<?php  
/** 
* <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 и его Вида. Первый должен быть размещен в /myfirsproject/application/controllers/IndexController.php:
Убрать подсветку кода
1
2
3
4
5
6
7
8
9
10
<?php    
/** 
* <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

Рейтинг: 12345   << Вы можете поставить оценку этой статье


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


 
 

Оставить комментарий:

Имя


E-mail


Сообщение