Как открыть файл в браузере?

Когда я открываю некоторых .html файл в моем Windows 8.1 (например, этот файл C:\Users\me\sbox\foo\client\index.html) в браузере (URL - это: file:///C:/Users/me/sbox/foo/client/index.html), браузер анализирует файл, и я вижу его тот же путь как, я посетил веб-страницу. Никакому рабочему веб-серверу не было нужно, потому что это - только файл разметки HTML.

Я хочу сделать то же на своей Ubuntu (Amazon Linux на самом деле). Я хочу ввести IP-адрес своей Ubuntu в браузер и добраться /var/www/index.html. Я имею в виду общедоступный IP, который является: http://123.12.12.12/ или http://123.12.12.12/index.html и получите страницу в браузере.

Действительно ли это возможно? Как достигнуть его? Мне действительно нужно какое-либо выполнение веб-серверов? Я просто хочу открыться .html файл, нет .php или что бы то ни было, никакой синтаксический анализатор не необходим.

Как я понимаю, я должен:

  1. откройте:80 портов

  2. установите некоторую конфигурацию так, чтобы все общедоступные входящие запросы http:80 перешли в /var/www папка.

Я прав? Как сделать это?

2
задан 16 July 2015 в 18:10

3 ответа

Для доступа к файлам через браузер, от другого компьютера, Вам будет нужен веб-сервер для управления запросами.

веб-сервер Apache сделает точно это.

Установка

sudo install apache2

Запускает сервер

sudo /etc/init.d/apache2 start

сервер Остановки

sudo /etc/init.d/apache2 stop

, Когда сервер Apache выполняет весь эти точка URL в тот же файл, судите их в своем браузере.

file:///var/www/html/index.html

localhost/index.html

{Вы IP address}/index.html

1
ответ дан 2 December 2019 в 01:26

Да, Вам нужен веб-сервер. Посмотрите на URL, который Вы запрашиваете. Если первая часть - протокол - является "файлом": затем браузер сделает локальный поиск для файла. Если протокол является "http": браузер откроет сетевое соединение на порте 80 к части сервера URL.

, Только если Вам удалось смонтировать своего рода сетевой ресурс к серверу Linux Amazon, Вы смогли использовать "файл": протоколируйте здесь. Иначе Вам нужен веб-сервер на другом конце, даже если Вы только хотите переданный файл HTML, не проанализированный и выполняемый в случае .php. К счастью, установка, которую Apache2 делает точно, что, и это не трудно.

5
ответ дан 2 December 2019 в 01:26

Если Вы хотите быструю и грязную короткую команду, используйте python SimpleHTTPServer

python -m SimpleHTTPServer

Как использовать его пример для Вашего случая:

$ cd /var/www
$ python -m SimpleHTTPServer

Вот именно! Это будет служить текущему каталогу /var/www. Порт по умолчанию 8000, таким образом, Ваш веб-сайт будет доступен от http://ip-address:8000 или в Вашей локальной машине http://localhost:8000

Получить доступ к другим файлам, не названным index.html, используйте их имя http://ip-address:8000/other-name.html, если не будет никакого index.html, то Вы будете видеть, что каталог перечисляет со всеми файлами в Вашей папке.

Для изменения порта у Вас должны быть sudo полномочия:

$ sudo python -m SimpleHTTPServer 80

Эта команда будет обслуживать Ваш каталог на порте 80, если у Вас будет apache2, уже установленный, можно изменить этот порт на 81, таким образом, это не имеет конфликта порта, и Вы получите доступ к своему веб-сайту от http://ip-address:81, не забывайте позволять эти порты в своем брандмауэре, позволять порту 80 использования:

$ sudo ufw allow 80/tcp

Никакой веб-сервер

Иначе не должен использовать веб-сервер, просто установить Вашу любимую настольную среду и браузер на Вашем сервере и подключении к нему с удаленным рабочим столом по Вашему выбору. Затем Ваш веб-сайт будет доступен от браузера, поскольку Вы привыкли к в file:///var/www/index.html

6
ответ дан 2 December 2019 в 01:26

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

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