Внедрение внутреннего API USERSIDE: различия между версиями

Материал из WiKi - UserSide
Нет описания правки
Нет описания правки
Строка 73: Строка 73:
----
----


Пример виртуального хоста для фреймворка Debian/Ubuntu NGINX
'''Пример виртуального хоста для фреймворка Debian/Ubuntu NGINX'''


  server {
  server {
Строка 80: Строка 80:


   listen 80;
   listen 80;
 
   server_name api.localhost;
   server_name api.localhost;
   root        /var/www/userside/erp/web/;
   root        /var/www/userside/erp/web/;
   index      index.php;
   index      index.php;
 
   access_log  /var/log/nginx/useside-api-access.log;
   access_log  /var/log/nginx/useside-api-access.log;
   error_log  /var/log/nginx/useside-api-error.log;
   error_log  /var/log/nginx/useside-api-error.log;
 
   location / {
   location / {
       try_files $uri $uri/ /index.php$is_args$args;
       try_files $uri $uri/ /index.php$is_args$args;
   }
   }
 
   location ~ \.php$ {
   location ~ \.php$ {
       include fastcgi_params;
       include fastcgi_params;
Строка 98: Строка 98:
       try_files $uri =404;
       try_files $uri =404;
   }
   }
 
   location ~ /\.(ht|svn|git) {
   location ~ /\.(ht|svn|git) {
       deny all;
       deny all;
   }
   }
  }
  }

Версия от 11:08, 17 июня 2016

Начиная с версии 3.9 мы начинаем в ERP "UserSide" постепенный переход на фреймворк.

Эта миграция будет постепенной с целью минимизировать проблемы и простои в работе. При переходе на версию 3.9 требуется настроить новый виртуальный хост для внутреннего API USERSIDE. На функционирование USERSIDE это пока никак не влияет, но данная настройка требуется, чтобы двигаться дальше.

Пока это не сделано - на главной странице будет выводиться сообщение

Для подготовительных работ по внедрению фреймворка в приложение USERSIDE необходимо:

0. Исходные данные следующие:

а) файлы и каталоги приложения USERSIDE расположены в каталоге /var/www/userside/
б) адрес сайта виртуального хоста userside.mydomain.com

1. Создать структуру каталогов

Если раньше структура каталогов была следующей:
 /var/www/userside/index.php и другие каталоги и файлы

То новая структура будет следующей:
 /var/www/userside/userside3/index.php - это старое приложение. Его нужно перенести в новый вложенный каталог userside3 внутри существующего
 /var/www/userside/erp/web/index.php - каталог erp/web - это documentroot для будущего приложения

2. Настроить виртуальные хосты следующим образом (пример для Apache24 Debian/Ubuntu)

Виртуальный хост для старого приложения:

<VirtualHost *:80>
   ServerAdmin webmaster@yourdomain.name
   DocumentRoot "/var/www/userside/userside3"
   ServerName userside.mydomain.com
   ErrorLog "/var/log/apache2/usesride-main-error.log"
   CustomLog "/var/log/apache2/userside-main-access.log" common
   <Directory "/var/www/userside/userside3">
       Options -Indexes
       AllowOverride All
       Require all granted
   </Directory>
</VirtualHost>

Виртуальный хост для фреймворка (пока будет использоваться только для локального АПИ)

<VirtualHost *:80>
   ServerAdmin webmaster@yourdomain.name
   DocumentRoot "/var/www/userside/erp/web"
   ServerName api.localhost
   ErrorLog "/var/log/apache2/userside-api-error.log"
   CustomLog "/var/log/apache2/userside-api-access.log" common
   <Directory "/var/www/userside/erp/web">
       Options -Indexes
       AllowOverride All
       Require all denied
       Require ip 127.0.0.1
       RewriteEngine on
       RewriteCond %{REQUEST_FILENAME} !-f
       RewriteCond %{REQUEST_FILENAME} !-d
       RewriteRule . index.php
   </Directory>
</VirtualHost>

3. В каталог /var/www/userside/erp/web положить файл index.php из архива http://userside.eu/main/files/index.zip

Полный путь должен быть /var/www/userside/erp/web/index.php

4. В файл /etc/hosts на сервере необходимо добавить запись типа

127.0.0.1   api.localhost

5. Произвести изменения путей в:

- файле конфигурации /main/config/config.php
- системном cron



Пример виртуального хоста для фреймворка Debian/Ubuntu NGINX

server {
  charset utf-8;
  client_max_body_size 128M;
  listen 80;

  server_name api.localhost;
  root        /var/www/userside/erp/web/;
  index       index.php;

  access_log  /var/log/nginx/useside-api-access.log;
  error_log   /var/log/nginx/useside-api-error.log;

  location / {
      try_files $uri $uri/ /index.php$is_args$args;
  }

  location ~ \.php$ {
      include fastcgi_params;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      fastcgi_pass unix:/var/run/php/php5-fpm.sock;
      try_files $uri =404;
  }

  location ~ /\.(ht|svn|git) {
      deny all;
  }
}