Мы используем cookie-файлы
Для оптимизации работы нашего сайта мы используем cookie-файлы. Продолжая использовать сайт, Вы соглашаетесь с использованием cookie-файлов.
  • UAH
  • USD
  • RUB
  • EUR
  • +38(044) 392-74-33  Киев
  • +38(057) 728-39-00  Харьков
  • +38(056) 794-38-31  Днепр
  • +38(032) 229-58-93  Львов
  • +38(048) 738-57-70  Одесса
  • +38(093) 170-15-42  Life
  • +38(067) 400-88-44  Киевстар
  • +38(095) 630-90-82  MTC
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7(499) 348-28-61  Москва

Пожелания и предложения. Просьба добавить /user/bin/env

Форумы Пожелания и предложения Просьба добавить /user/bin/env
Amsterdam
04.09.2014
хостинг: есть
домен: есть
Просьба добавить /user/bin/env
Могли бы вы добавить /user/bin/env, чтобы работало следующие:
/user/bin/env php - пусть оно было бы направленно на php версии, которая указана в настройках сайта
так же это даст возможность сменить версию в настройках без переписывания кода по всему проекту
Amsterdam
04.09.2014
хостинг: есть
домен: есть
опечатка: /usr/bin/env
Илья
04.09.2014
хостинг: есть
домен: есть
Не совсем понятно куда добавить /usr/bin/env и почему необходимо переписывать код для смены версии PHP
Amsterdam
04.09.2014
хостинг: есть
домен: есть
прошу прощения, я ошибся - файл с таким содержим работает:
#!/usr/bin/env php
<?php
echo phpversion();
?>

НО выводит - 5.2.17
идея была в том, чтобы подхватывалась версия, которая установленна через настройки. Это бы улучшило:
1) не нужно в каждом скрипте писать условия IS_PRODUCTION
2) при смене версии пхп, ничего не нужно было бы переписывать
eugen
04.09.2014
хостинг: есть
домен: есть
идея была в том, чтобы подхватывалась версия, которая установленна через настройки © Amsterdam


Оставьте env в скриптах + пропишите путь к необходимой версии php в файле .bash_profile в корневой папке аккаунта. Например, чтобы версия php бралась 5.3 для всех скриптов с такой настройкой env добавьте в конец этого файла строку:

PATH=/usr/local/php53/bin:$PATH

Изменения вступят в силу при следующем логине по ssh. При запуске скрипта как shell команды не существует понятия сайта, поэтому версия php при запуске скриптов с любого сайта аккаунта будет одинаковой и с этим ничего не поделаешь.
Amsterdam
05.09.2014
хостинг: есть
домен: есть
Изменения вступят в силу при следующем логине по ssh. © eugen

Еще 2 вопроса:
- это так же будет учтено при выполнении скриптов через cron? (будет ли использована установленная в .bash_profile версия php)
- какой ini файл будет использован? который редактируется через "web Настройки" или какой-то другой?
eugen
05.09.2014
хостинг: есть
домен: есть
это так же будет учтено при выполнении скриптов через cron? © Amsterdam

Вероятно, нет. cron создает отдельный очень ограниченный environment при выполнении каждой задачи.

какой ini файл будет использован © Amsterdam

php.ini будет использован системный, общий для всех аккаунтов на сервере.

Есть цель и ssh и крон и еще нужно php.ini от своего сайта www.domain.com - можно сделать скрипт /home/login/myphp.sh, где будет что-то вроде:
#!/bin/bash
/usr/local/php53/bin/php -c /home/login/.system/php/www.domain.com.ini $@


При этом по ssh запускать скрипты как ./myphp.sh script.php или сделать алиас в .bashrc php на /home/login/myphp.sh и тогда будут запускаться и как php script.php
В крон нужно будет ставить задачи в виде /home/login/myphp.sh script.php

Сделать, чтобы скрипт, запущенный из крона или по ssh сам определил для себя версию php и конфиг, с которым ему запускаться, исходя из настроек сайта - не получится.
Илья
07.09.2014
хостинг: есть
домен: есть
Как дополнение можно сделать bash файл, который будет автоматически парсить путь, указанный к скрипту и в зависимости от адреса сайта (который можно определить по названию директории) вызывал соответствующую версию PHP.
Amsterdam
08.09.2014
хостинг: есть
домен: есть
1) только что заметил, что ini файлы остаются в .system даже после удаления домена/сайта - не знаю фича это или баг
2) а нельзя ли это как-то автоматизировать, все то о чем мы говорили выше:
- переопределить /usr/bin/env php этим скриптом в системе (зачем вообще php 5.2, тем кто использует 5.3, 5.4, 5.5? Мне кажется, сайт должен работать в рамках одной версии по умолчанию, чтобы было все консистентно. Если я в настройках поставил 5.5, то пусть и команда php вызывает 5.5 версию)
- или же создать какой-то алиас
что думаете?
eugen
08.09.2014
хостинг: есть
домен: есть
Если я в настройках поставил 5.5 © Amsterdam

А если у одного сайта 5.5, а у второго 5.3?

или же создать какой-то алиас © Amsterdam

Опять же - алиас на 5.5 или 5.3, если разные версии у разных сайтов используются? Проблема в том, что сайтов может быть несколько, а команда php должна ссылаться только на одну из них.

В теории определять имя сайта по пути к файлу, по имени сайта брать php.ini, из него определять версию php и запускать ее, а в случае ошибки поиска какую-то дефолтную версию php - можно. Но я бы это ожидаемым поведением не назвал. Как костыль для себя - да, можно.

В целом вопрос Вы подняли важный, но нужно подумать как его правильно решить. Возможно введением понятия дефолтной версии php для аккаунта. Тот же composer например тоже полагается на env, и с настройками по умолчанию работать не будет, т.к. требует минимум php 5.3. Точнее работать будет только при явном указании /usr/local/php53/bin/php composer.phar
Amsterdam
08.09.2014
хостинг: есть
домен: есть
спасибо за ответ и разъяснения. вот хочу такой вариант предложить, может возможно такое реализовать:
1) ввести понятие дефолтной версии (по умолчанию 5.2, для обратной совместимости)
2) /usr/bin/env php - здесь будет ваш скрипт, который будет парсить аргумент файла, и по нему определять сайт и версию. если же сайт не удалось определить, например:
/usr/bin/env php --version
тогда вызывать дефолтную версию
Amsterdam
11.09.2014
хостинг: есть
домен: есть
будет ли данный вопрос рассмотрен хостингом?
Илья
11.09.2014
хостинг: есть
домен: есть
Вопрос рассмотрен, Ваши пожелания учтены, но сделать сейчас мы их не можем.
Согласно политики компании мы не можем давать сроки ее выполнения и обещать что мы ее выполним.
Amsterdam
18.09.2014
хостинг: есть
домен: есть
-3
Есть какие-то здвиги в этой задаче? Вообще реально ли реализовать переопределение команды php на настраиваемую версию в системе?
Amsterdam
01.10.2014
хостинг: есть
домен: есть
Апну тему, потому как не хотелось чтобы она закрылась автоматически. Очень жду разрешения проблемы, чтобы полноценно использовать vendor'ные библиотеки
Amsterdam
15.10.2014
хостинг: есть
домен: есть
предлагаю начать с малого, просто ввести параметр "пхп версия по умолчанию" и поставить его в 5.2
этого уже будет достаточно
eugen
16.10.2014
хостинг: есть
домен: есть
предлагаю начать с малого, просто ввести параметр © Amsterdam

Это только звучит просто. На самом деле, это задача не из простых, к тому же имеет ряд зависимостей. На текущий момент задача на этапе "подумать, как это правильно сделать".
Amsterdam
13.11.2014
хостинг: есть
домен: есть
ап
ts999
16.11.2014
хостинг: есть
домен: есть
Просьба добавить кнопку типа "преобразовать таблицу статистики посещений сайта в карту". Чтобы иметь возможность наглядно видеть и анализировать по карте мира, откуда больше обращений к сайту - из каких точек мира. В результате должна получиться карта мира с точками на ней, откуда были посещения сайта. Спасибо
Илья
16.11.2014
хостинг: есть
домен: есть
Просьба добавить кнопку типа "преобразовать таблицу статистики посещений сайта в карту" © ts999

Для этого есть отличные сервисы типа google analythics.
Участвовать в общении на этом форуме могут только
зарегистрированные пользователи.

Если вы уже зарегистрированы Вам необходимо войти на форум.

Тема закрыта по истечению срока давности.
Горячая линия
(044)
392 74 33
другие города