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