Мне нужно запустить PHP-скрипты на сервере без необходимости обновления хранящихся файлов - выполнить тестирование на реальном сервере перед развертыванием. Сервер имеет доступ к базе данных, которая недоступна извне. По этой причине я не могу запускать свои скрипты локально, мне нужно запускать их в среде сервера, но я не хочу обновлять файлы, хранящиеся на сервере. Есть ли способ сделать это? Есть ли инструмент для удаленной отладки PHP?Как запускать скрипты PHP на сервере без обновления файлов сервера
ответ
Я нашел решение - XDebug для PHP. Однако, как упоминалось в комментариях, тестирование против копии БД и использование виртуализации - более распространенный подход, к которому я лично, вероятно, буду придерживаться. Для тех, кто по-прежнему настроен идти «жестким» способом, вот ссылка на HOWTO на установку XDebug для PHP на Ubuntu - http://ubuntuforums.org/showthread.php?t=525257.
Есть несколько способов достижения этой вещи
- Вы можете экспортировать базу данных с живого сервера и импортировать его на локальный сервер для тестирования и отладки цели.
- Вы можете загружать код в отдельную папку или поддомен на сервере для подключения к базе данных и тестирования с использованием живых конфигураций сервера. Как только вы удовлетворитесь, замените живые файлы.
Спасибо за ваш ответ). Все дело в тестировании изменений без необходимости развертывания каждый раз изменение было сделано, поэтому второе предложение не будет работать для меня. Первый подход аналогичен тому, что было предложено в комментариях к первоначальному сообщению, см. Мои комментарии. –
Вы используете SVN/GIT или любую другую систему репозитория? –
Да, я использую Git, и я установил push-to-deploy. –
Почему вы не можете просто создать резервную копию базы данных и импортировать ее в свой локальный хост? – divix
Это определенно вариант, но я предпочел бы считать это в крайнем случае, поскольку мне потребуется установить СУБД и отслеживать изменения модели данных базы данных сервера. То, что я искал, - это готовое к использованию решение для удаленной отладки PHP, которое позволит мне запускать сценарии в изолированной среде на сервере (возможно, расширение для веб-сервера Apache или что-то еще). –
Разработка и тестирование копии (имитируемой или реальной) производственной базы данных более распространены. Работа с живой базой данных не является хорошей идеей. Такие инструменты, как бродяга, значительно упрощают работу системы в целом. –