Два (або більше) проекти 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 буде розділена між всіма проектами. Якщо буде потрібно, ви зможете оновити версію 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


Повідомлення