Как сделать снимок экрана с помощью сервера Ubuntu 17 на порту 80

Я развернул веб-страницу, используя Apache2, установленную на моем сервере Ubuntu 17 Azure.

Есть ли команда, которую я могу запустить с терминала, где я могу захватить скриншот для моего сайта через порт 80?

Я пробовал эту команду: gnome-screenshot, но поскольку это сервер говорит:

Unable to init server: Could not connect: Connection refused (gnome-screenshot:55421): Gtk-WARNING **: cannot open display:

Как добавить номер порта в эту команду или как я могу сообщить команде, чтобы получить снимок экрана с моей веб-страницы?

1
задан 25 March 2018 в 04:00

6 ответов

как комментаторы указали, что вы пытаетесь сделать, это не очень хорошо определены на безголовый сервер. Сервер Apache не передавать "картинку" веб-страницы (просто HTML-разметки); изображение, которое вы обычно видите генерируется веб-браузер и браузер может сослужить ту же страницу по-разному в зависимости от размера экрана (и другие вещи, как браузерной версии, настройки и т. д.). Если у вас нет экрана, нет четкого пути, чтобы захватить изображение.

с этим, как говорится, одно из возможных решений (скорее всего, самый простой одной), что я слышал помощи phantomjs, веб-безголовый браузер: http://phantomjs.org/ я не использовал хотя лично этот метод; ваш пробег может варьироваться.

более общее решение для выполнения графических материалов на сервер для создания дисплея для GUI-приложений для запуска на через Xvfb. Это позволит вам использовать [ф7] как вы пытались. Для этого, начните с установка и запуск Xvfb:

[Ф1]

после установки и запуска GNOME:

[Ф2]

Вам понадобится браузер. Любой будет делать, но я буду использовать например в Firefox:

[Ф3]

запустите браузер указывает на веб-страницу вы хотите (в вашем случае, сервер Apache на порту [ф8] 80):

[Ф4]

, наконец, сделать скриншот как вы пытались:

[ф5]

при необходимости, очистить процессы:

[ф6]

как видите, этот способ намного сложнее (и ресурс-тяжелая: более 500 Мб устанавливается), но это приходит с преимуществом, что вы можете сделать скриншот любого GUI приложения так же, как и на настольном компьютере, и это не ограничивается просто делать скриншоты веб-страниц.

1
ответ дан 8 June 2018 в 15:18
  • 1
    Огромное спасибо! Это звучит здорово. Потому что я не хочу сделать скриншот на HTML-теги, я хочу, чтобы вся страница, как это видно для пользователей. Все в вашем решении шло хорошо, но когда я взял скриншот, написано: [Ф1] – codeDojo 25 March 2018 в 20:16

Как отмечают комментаторы, то, что вы пытаетесь сделать, не очень четко определено на безголовом сервере. Сервер Apache не отправляет никакого «изображения» веб-страницы (только разметка HTML); изображение, которое вы обычно видите, генерируется вашим веб-браузером, и браузер может отображать одну и ту же страницу по-разному в зависимости от размера экрана (и других вещей, таких как версия браузера, настройки и т. д.). Если у вас нет экрана, нет четкого способа захвата изображения.

С учетом сказанного одно возможное решение (вероятно, самое легкое), о котором я слышал, это PhantomJS, безгласный веб-браузер: http://phantomjs.org/ Я не использовал этот метод лично, хотя; ваш пробег может отличаться.

Более общее решение для создания графических материалов на сервере - это создание дисплея для приложений GUI для работы с использованием Xvfb. Это позволит вам использовать gnome-screenshot, как вы пытались. Для этого начните с установки и запуска Xvfb:

sudo apt-get install xvfb export DISPLAY=:0 Xvfb $DISPLAY -screen 0 1920x1080x24 -shmem -cc 4 &

Затем установите и запустите Gnome:

sudo apt-get install gnome-panel gnome-screenshot gnome-settings & gnome-panel & metacity &

Вам понадобится браузер. Любой будет, но я буду использовать Firefox, например:

sudo apt-get install firefox

Затем запустите браузер, указав на нужную веб-страницу (в вашем случае сервер Apache на порту localhost 80): [ ! d8] firefox http://localhost &

Наконец, сделайте скриншот так же, как вы пытались:

gnome-screenshot

При необходимости очистите процессы:

killall firefox Xvfb gnome-settings gnome-panel metacity

Как вы может показаться, что этот метод намного сложнее (и ресурсоемкий: более 500 МБ инсталляций), но он имеет то преимущество, что вы можете сделать скриншот любого графического приложения, как на рабочем столе, и это не так, t ограничивается только снятием скриншотов с веб-страниц.

1
ответ дан 17 July 2018 в 18:09

Как отмечают комментаторы, то, что вы пытаетесь сделать, не очень четко определено на безголовом сервере. Сервер Apache не отправляет никакого «изображения» веб-страницы (только разметка HTML); изображение, которое вы обычно видите, генерируется вашим веб-браузером, и браузер может отображать одну и ту же страницу по-разному в зависимости от размера экрана (и других вещей, таких как версия браузера, настройки и т. д.). Если у вас нет экрана, нет четкого способа захвата изображения.

С учетом сказанного одно возможное решение (вероятно, самое легкое), о котором я слышал, это PhantomJS, безгласный веб-браузер: http://phantomjs.org/ Я не использовал этот метод лично, хотя; ваш пробег может отличаться.

Более общее решение для создания графических материалов на сервере - это создание дисплея для приложений GUI для работы с использованием Xvfb. Это позволит вам использовать gnome-screenshot, как вы пытались. Для этого начните с установки и запуска Xvfb:

sudo apt-get install xvfb export DISPLAY=:0 Xvfb $DISPLAY -screen 0 1920x1080x24 -shmem -cc 4 &

Затем установите и запустите Gnome:

sudo apt-get install gnome-panel gnome-screenshot gnome-settings & gnome-panel & metacity &

Вам понадобится браузер. Любой будет, но я буду использовать Firefox, например:

sudo apt-get install firefox

Затем запустите браузер, указав на нужную веб-страницу (в вашем случае сервер Apache на порту localhost 80): [ ! d8] firefox http://localhost &

Наконец, сделайте скриншот так же, как вы пытались:

gnome-screenshot

При необходимости очистите процессы:

killall firefox Xvfb gnome-settings gnome-panel metacity

Как вы может показаться, что этот метод намного сложнее (и ресурсоемкий: более 500 МБ инсталляций), но он имеет то преимущество, что вы можете сделать скриншот любого графического приложения, как на рабочем столе, и это не так, t ограничивается только снятием скриншотов с веб-страниц.

1
ответ дан 23 July 2018 в 18:59

Пожалуйста, взгляните на эту ссылку. http://www.upubuntu.com/2012/07/how-to-take-screenshot-from-terminal-on.html

или попробуйте это на своем терминале gnome-screenshot --help

0
ответ дан 8 June 2018 в 15:18

Пожалуйста, взгляните на эту ссылку. http://www.upubuntu.com/2012/07/how-to-take-screenshot-from-terminal-on.html

или попробуйте это на своем терминале gnome-screenshot --help

0
ответ дан 17 July 2018 в 18:09

Пожалуйста, взгляните на эту ссылку. http://www.upubuntu.com/2012/07/how-to-take-screenshot-from-terminal-on.html

или попробуйте это на своем терминале gnome-screenshot --help

0
ответ дан 23 July 2018 в 18:59

Другие вопросы по тегам:

Похожие вопросы: