PHP-код на локальном хосте не работает на сервере - с phantomjs

Я использую php-скрипт из github, чтобы сделать снимок экрана веб-сайта. Он отлично работает в localhost. Но не работает после загрузки того же кода на мой сервер (хостинг linux). Я пробовал загружать на несколько серверов. Ни один из них не работал. Коды ошибок не приходят.

В документации сказано:

Сделайте исполняемый файл bin chmod + x / var / www / html / screen / bin / phantomjs,

Сделайте вашу папку доступной для записи

Я не уверен, что это означает, поэтому я установил права доступа к файлам для всех файлов и папок на 777. До сих пор не работает

Как я загрузил на свой сервер.

Я загрузил весь код на сервер. Изменены права доступа к файлам для всех каталогов и файлов на 777 с помощью FileZilla. Я приложил скриншот. введите описание изображения здесь


person Gijo Varghese    schedule 30.12.2015    source источник
comment
Никаких ошибок? Скрипт работает при ручном запуске? Вы проверили, действительно ли phantomjs находится в / var / www / html / screen / bin / phantomjs на реальном сервере?   -  person Vaviloff    schedule 30.12.2015
comment
да. Пробовал вручную. Ссылка: wdudes.com/demo/screen-master/shot. .php? url = google.com Но как его найти? Зачем это нужно? Я не получил   -  person Gijo Varghese    schedule 30.12.2015
comment
Обновите вопрос, указав, как вы развернули скрипт на сервере, с указанием полных путей и разрешений, которые вы установили. В противном случае здесь будет длинная цепочка комментариев.   -  person Vaviloff    schedule 30.12.2015
comment
@Vaviloff ок. Я обновил вопрос со всеми подробностями. Пожалуйста, проверьте это   -  person Gijo Varghese    schedule 30.12.2015
comment
Вы установили разрешения рекурсивно?   -  person StoryTeller    schedule 30.12.2015
comment
да. Я выбрал рекурсивно и применил ко всем файлам и каталогам   -  person Gijo Varghese    schedule 30.12.2015
comment
на некоторых серверах не установлена ​​библиотека PHP-GD. если вы работаете с обработкой изображений, проверьте наличие GD lib. используя метод php info. и установите его.   -  person Kaleem Ullah    schedule 30.12.2015
comment
но я использовал тот же код на том же сервере 2 года назад. Это работало   -  person Gijo Varghese    schedule 30.12.2015
comment
да. Я связался с серверными ребятами, они сказали, что он поддерживается по умолчанию   -  person Gijo Varghese    schedule 30.12.2015
comment
Какой хостинг вы используете, случайно ли это виртуальный хостинг? У вас есть доступ по SSH? Можете ли вы войти на сервер через SSH, перейти в каталог bin, где находится phantomjs, и запустить ./phantomjs --version?   -  person Vaviloff    schedule 30.12.2015
comment
я на виртуальном хостинге. У меня нет доступа по ssh   -  person Gijo Varghese    schedule 30.12.2015
comment
Тогда, скорее всего, вы не сможете выполнять внешние программы с помощью PHP, следовательно, не можете запускать PhantomJS. Я настоятельно рекомендую купить дешевый VPS (найдите его на lowendbox.com или просто купите на digitalocean / vultr) и поэкспериментируйте с ним, изучая основы серверов Linux.   -  person Vaviloff    schedule 03.01.2016


Ответы (1)


Я думаю, что это все еще проблема с разрешениями, вам нужно установить соответствующие разрешения с помощью шпатлевки.

 1. Login using putty
 2. Open root directory
 3. Set permissions file and folder using this command
     ===> chmod -R 777 folder name
person Patel Ankit    schedule 30.12.2015
comment
Менять разрешения для всех папок и файлов - действительно плохая идея. - person maxhb; 30.12.2015
comment
Я уже пробовал установить разрешение с помощью Filezilla. Без изменений. То же самое и с плесенью? - person Gijo Varghese; 30.12.2015