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

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

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

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

Unable to init server: Could not connect: Connection refused

(gnome-screenshot:55421): Gtk-WARNING **: cannot open display: 

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

1
задан 25 March 2018 в 03:28

2 ответа

Как комментаторы указали, что Вы пытаетесь сделать, не очень четко определено на бездисплейном сервере. Сервер 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):

firefox http://localhost &

Наконец, сделайте снимок экрана точно так же, как Вы пытались:

gnome-screenshot

Дополнительно, очистите процессы:

killall firefox Xvfb gnome-settings gnome-panel metacity

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

1
ответ дан 7 December 2019 в 15:22

Смотрите на этой ссылке. http://www.upubuntu.com/2012/07/how-to-take-screenshot-from-terminal-on.html

или попробуйте это на своем терминальном снимке экрана гнома - справка

0
ответ дан 7 December 2019 в 15:22

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

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