Вопрос:
Я только что создал домашнюю сеть Wi-Fi. У меня есть все мои файлы на моем настольном компьютере (192.168.1.56) и вы хотите получить доступ к локальному хосту там с другого компьютера (192.168.1.2).
На моем рабочем столе я могу получить доступ к localhost через обычный http://localhost. Apache работает на порту 80, как обычно.
Что я должен сделать, чтобы добиться этого? В сети есть документация, но они либо не работают, либо слишком фрагментированы и запутываются, чтобы понять.
Я думаю, что мне нужно внести изменения в файл apache httpd.conf и файл hosts. Любые идеи относительно того, какие изменения вносить?
Лучший ответ:
Локальный хост – это просто имя, указанное для петлевого цикла, например, это похоже на себя как “я”.
Чтобы просмотреть его с других компьютеров, скорее всего, нужно или http://myPcsName, если это не работает, есть вероятность, что на вашем компьютере установлен брандмауэр, или httpd.conf только прослушивает 127.0.0.1
Ответ №1
Спасибо за подробное объяснение.
Только для разработки, в Windows, перейдите в Панель управления → Брандмауэр, в исключениях добавьте http и порт 80. Затем в разделе “Сервис” отметьте “http (порт веб-сервера 80)” и “https (порт веб-сервера 443)” ТОЛЬКО, если вам также нужно https. Хорошо, ОК, Закрыть
Затем перейдите на любой компьютер в сети и введите http://computer-name (где вы меняете брандмауэр и на нем работает xampp) в вашем веб-браузер и счастливые дни:)
Ответ №2
это очень легко
- Перейти на панель управления XAMPP
- Нажмите на apache> config> Apache (httpd.conf)
- Найдите Listen 80 и замените на Listen 8080
- После этого проверьте локальный IP-адрес с помощью команды ipconfig (консоль cmd)
- Найдите имя_хоста localhost: 80 и замените своим локальным ip: 8080 (ex.192.168.1.156: 8080)
- После этого откройте apache> config> Apache (httpd-xampp.conf)
-
Поиск по
<Directory «C:/xampp/phpMyAdmin»> AllowOverride AuthConfig **Require local** Replace with **Require all granted** ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </Directory>»’
-
Перейдите в xampp> config>, нажмите на настройки службы и порта и измените порт apache 8080
- перезапустите xampp
- затем нажмите свой IP: 8080 (ex.192.168.1.156: 8080) с другого компьютера
Ответ №3
Это следующие шаги, которые необходимо выполнить, если вы хотите, чтобы ваше приложение PHP было установлено на LAN-сервере (а не в Интернете).
- Получить внутренний IP-адрес или статический IP-адрес сервера (пример: 192.168.1.193)
- Открыть файл XAMPP > apache > conf > httpd.conf в блокноте
- Поиск прослушивания 80
- Над строкой будет читаться как -Listen 0.0.0.0:80/12.34.56.78:80
- Измените IP-адрес и замените его на статический IP
- Сохраните файл httpd.conf, указав, что сервер указывает на #Listen 192.168.1.193:80
- В корне config.php приложения (соединение db) замените localhost на IP-адрес сервера
Примечание:
Если брандмауэр установлен, убедитесь, что вы добавили http-порт 80 и 8080 в исключения и разрешили прослушивать.
Перейдите в Панель управления > Брандмауэр Windows > Разрешить программе общаться через брандмауэр Windows > Добавить другую программу
Имя: http
Порт: 80
Добавьте еще один как http-8080
Если IIS (Microsoft.Net Application Internet Information Server) установлен с любым Microsoft.Net-приложением уже на сервере, то он уже занял бы 80 портов. В этом случае измените #Listen 192.168.1.193:80 на #Listen 192.168.1.193:8080
Надеюсь, это поможет!:)
Ответ №4
Это должно быть все, что вам нужно для базовой установки
Такая конфигурация не прерывает phpMyAdmin на localhost
Рекомендуется использовать статический IP-адрес на устройстве, на котором запущен сервер
В этом примере используется IP-адрес 192.168.1.x. В конфигурации вашей сети может использоваться другой IP
В httpd.conf в Apache вы должны иметь:
# Listen: Allows you to bind Apache to specific IP addresses and/or # ports, instead of the default. See also the <VirtualHost> # directive. # # Change this to Listen on specific IP addresses as shown below to # prevent Apache from glomming onto all bound IP addresses. # #Listen 12.34.56.78:80 Listen 80
Я бы оставил пустое имя, чтобы оно получило значения по умолчанию:
# ServerName gives the name and port that the server uses to identify itself. # This can often be determined automatically, but we recommend you specify # it explicitly to prevent problems during startup. # # If your host doesn’t have a registered DNS name, enter its IP address here. #
Разрешить гостевые машины и самостоятельно. В качестве предупреждения о безопасности вы можете избежать Разрешить от всех, но вместо этого использовать конкретный гостевой IP, например Allow from 192.168.1.xxx, где xxx – это гостевой компьютер IP. В этом случае вам может потребоваться рассмотреть статические IP-адреса на гостевых машинах также
# Controls who can get stuff from this server. # # Require all granted # onlineoffline tag — don’t remove Order Deny,Allow # Deny from all Allow from all Allow from 127.0.0.1 Allow from ::1 Allow from localhost Allow from 192.168.1.*YOURguestIP* Allow from 192.168.1.*YOURselfIP* </Directory>
Перезагрузите все службы и нажмите “Поставить в сети” из значка в трее.
Ответ №5
Иногда ваш брандмауэр может быть проблемой. Убедитесь, что вы отключили мониторинг антивирусного брандмауэра. Это сработало для меня.
Ответ №6
Если вы используете XAMPP 1.8.3
Перейдите в файл httpd-xampp.conf и выполните поиск
” # # Новая концепция безопасности XAMPP # статус сервера | Сервер-инфо))” >
Require local ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </LocationMatch>
“
Отрежьте этот код и сохраните его где-нибудь для последующего использования. Вернемся к этой функции (помните, что удаление этого кода делает ваш компьютер уязвимым). Сохраните изменения на httpd-xampp.conf, перезапустите службы на XAMPP и запустите его.
Ответ №7
Перейдите в xampp-control в панели задач
xampp-control -> Apache —> Config —> httpd.conf
Блокнот откроется с конфигурационным файлом
Поиск
Слушайте 80
В одной строке над ней будет что-то вроде этого: 12.34.56: 80
Измените его
12.34.56:80 —> <your_ip_address eg:192.168.1.5>:80
Перезапустите службу apache и проверьте ее,
Надеюсь, он должен работать…
Ответ №8
Если вы подключены к сети Wi-Fi, это намного проще. Просто найдите Ip, в котором вы подключились к Wi-Fi. Например:
ваш-ip – “10.10.55.67”.
Затем запустите сервер xampp на вашем компьютере.
Затем на любом другом компьютере, подключенном к тому же Wi-Fi n/w, введите
http://your-ip
Например:
Ответ №9
Этот инструмент меня очень сильно сэкономил, так как у меня нет прав администратора на моей машине и уже установлены узлы. По какой-то причине конфигурация в моей сети не дает мне доступа к другим машинам, просто указывая IP в браузере.
# Using a local.dev vhost $ browser-sync start —proxy # Using a local.dev vhost with PORT $ browser-sync start —proxy local.dev:8001 # Using a localhost address $ browser-sync start —proxy localhost:8001 # Using a localhost address in a sub-dir $ browser-sync start —proxy localhost:8080/site1
http://www.browsersync.io/docs/command-line/
Ответ №10
После того, как вы установили конфиги appache, как описано в других ответах на этой странице, вам может потребоваться также открыть TCP-порты через ваш брандмауэр, как описано здесь:
Ответ №11
Вот что я сделал и работал у меня на окнах 10:
1) Нажмите windows + r и введите cmd. В командной строке введите ipconfig
2) найдите адрес ipv4 и переименуйте URL-адрес своего веб-сайта, например: .
3) Теперь убедитесь, что ваш брандмауэр имеет доступ к HTTP-серверу Apache. Окна поиска для “ Разрешить приложение через брандмауэр Windows” нажмите на него, затем в правом верхнем правом углу щелкните изменить настройки и убедитесь, что HTTP-сервер Apache имеет один галочку слева и один на частном или общественном. Надеюсь, что это поможет.
Теперь вы можете получить доступ к веб-сайту с других компьютеров в LAN
Ответ №12
Сначала перейдите в раздел “Сеть и общий доступ к вашему компьютеру”. Просто выполните несколько шагов, чтобы получить свой IPv4-адрес.
Поместите адрес IPv4 в другой браузер. Например, HTTP//192.168.0.102
Примечание
- Поворот брандмауэра Windows (если он не работает, в противном случае его необязательный)
Ответ №13Содержание
- Доступ к localhost с удаленного устройства
- а) Публикация в той же сети
- б) Публикация в любой сети (проще)
- Доступ к удаленному устройству из Local Dev Tools
- Дальнейшее чтение:
Доступ к localhost с удаленного устройства
Условие: Ваш сайт в настоящее время находится на http://localhost: 8081/ с таким инструментом, как live-сервер.
а) Публикация в той же сети
В той же сети вы можете получить доступ к вашему компьютеру с вашим текущим IP-адресом или именем хоста. Вы можете найти IP-адрес с помощью ipconfig | grep IPv4 ipconfig | grep IPv4 или имя хоста, отправив ping -a на этот ip.
:80/ http://hostname:80/
Примечание. Для достижения наилучших результатов используйте порт 80, подключитесь к частной сети и проверьте настройки брандмауэра.
б) Публикация в любой сети (проще)
-
Опция 1 – вы можете использовать ngrok для переадресации портов через общедоступные порты ngrok
Скачайте ngrok и выполните следующую команду:
$ ./ngrok http 8081
-
Опция 2 – Вы можете использовать localhost.run для создания туннеля ssh с помощью следующей команды:
ssh -R 80:localhost:8081 kylemit@ssh.localhost.run
Доступ к удаленному устройству из Local Dev Tools
Чтобы подключить инструменты разработчика браузера к подключенному устройству, следуйте инструкциям в разделе ” Начало работы с удаленной отладкой устройств Android”.
- На вашем телефоне включите “Параметры разработчика” и “Отладка по USB”
- Подключите телефон к компьютеру через USB и установите протокол (не для передачи файлов/мультимедиа)
-
Откройте Dev Tools> Дополнительные инструменты> Удаленная отладка (попробуйте здесь, если устройство не обнаружено)
-
Найдите свой сайт и нажмите “Проверить”, чтобы открыть новое окно инспектора.
Дальнейшее чтение:
- Как подключиться к этому локальному хосту с другого компьютера в той же сети?
- Доступ к сайту на локальном хосте с удаленного
- Как отлаживать веб-сайты на мобильных устройствах?
Ответ №14
Сначала вы перейдете в командную строку и введите
Notepad C:/windows/system32/drivers/etc/hosts
затем добавьте свой адрес ip ниже URL-адреса вашего сайта.
Затем вы перейдете в командную строку и введите
notepad c:/xampp/bin/apache/apache2.4.18/conf/extra/httpd-vhosts.conf
затем добавьте это ниже
documentroot «Directory of your site» Allow from all Require all granted Ответ №15<Files «.ht*»> Require all denied </Files> replace to <Files «.ht*»> Require local </Files> Ответ №16
Заменить
Require Local с Require all granted в xamppapacheconfextrahttpd-xampp.conf файле.
Ответ №17
У меня была эта проблема. Я использовал XAMPP на виртуальной машине с сетевыми настройками как “NAT”. Я изменил его на “Bridged”, и проблема была решена.
Ответ №18
Запустить сервер Nodejs по сети
const port = process.env.PORT || 3000; const server = http.createServer( server.listen(port, ‘0.0.0.0’, () => console.log(‘Server started on port ${port}’) ));
запустите http://yournetworkipaddress: 3000 для доступа к вашему приложению через локальную сеть (LAN)
Шаги по поиску вашей сети ip.
MacOS
- Перейдите в Системные настройки> Сеть
- Проверьте сетевой IP-адрес под подключенным.
Ответ №19
Хост по локальному IP,
Откройте CMD: ipconfig
Адаптер беспроводной локальной сети Wi-Fi: IPv4-адрес. , , , , , , , , , , : xx.xxx.xx.xxx
Ответ №20
Поэтому я пытался решить аналогичную проблему с подключением к совершенно другому серверу в своей локальной сети, чтобы при прерывании и восстановлении питания мой сервер возвращался в оперативный режим, а другие системы могли по-прежнему иметь связь с автоматизацией. Однако моя проблема заключалась в том, что DHCP иногда давал моему серверу разный IP-адрес. Эта тема ответила на мою проблему с NAMESERVER, которая изначально есть в Windows. Я подключался напрямую к своим серверам IP add через командный файл для инициализации соединения, но при возникновении проблем с питанием он не мог подключиться. Я изменил файл .bat так, чтобы он указывал на http://DESKTOP-actualnamewhereserver: port, и готово. Задача решена. Если я не изменю имена своих компьютеров, тогда, когда DHCP передает серверу DESKTOP-actualnamewhere новый IP-адрес, он все равно будет идентифицировать свое собственное имя в локальной сети и, следовательно, сможет принимать соединение независимо от его IP-адреса. Просто дайте другим людям в вашей беспроводной локальной сети имя вашего компьютера, на котором размещен сервер Apache, и предположим, что его имя – DESKTOP-DOUGHFACTORYHUT, они будут вводить http://DOUGHFACTORYHUT: 80 или любой другой номер порта, на котором ваша конфигурация apache установлена для размещения, например LOCALHOST: 80, которые по сути совпадают с вашим локальным динамическим IP-адресом, назначенным DHCP или STATIC IP, который вы задали серверу.
Ответ №21
Я полностью согласен с BugFinder.
В простых словах просто поместите ip-адрес 192.168.1.56 в свой браузер, работающий на 192.168.1.2!
если он не работает, тогда возможны следующие причины:
-
Проблема с сетевым подключением:
- Прежде всего, проверьте подключение к сети с помощью команды ping 192.168.1.56 в командной строке/терминале на компьютере 192.168.1.2.
-
Проблема межсетевого экрана:
У вашего брандмауэра Windows нет разрешения для XAMPP (apache).
(Наиболее вероятная проблема)- (раствор)
перейдите к расширенным настройкам брандмауэра и добавьте входящие и исходящие правила для исполняемого файла Apache.
- (раствор)
-
Проблема конфигурации Apache.:
Ваш apache настроен на прослушивание только локальных запросов.- (решение)
вы можете это, открыв файл httpd.conf и заменив
Слушайте 127.0.0.1:80 для прослушивания 80 или * Слушайте: 80
- (решение)
-
Конфликт портов с другими серверами (IIS и т.д.)
- (Решение) Отключите сервер Apache, а затем откройте локальный хост в браузере. если какой-либо ответ будет получен, тогда отключите этот сервер, а затем запустите Apache.
если все вышеописанное не работает, возможно, на вашем apache server.try есть некоторая проблема с конфигурацией, чтобы найти ее, иначе просто переустановите ее и перенесите все php файлы (htdocs) в новую установку XAMPP/WAMP.