Доступ к localhost (xampp) с другого компьютера по сети LAN - как?
Я только что установил сеть wi-fi дома. У меня есть все мои файлы на моем настольном компьютере (192.168.1.56) и хочу получить доступ к localhost там с другого компьютера (192.168.1.2).
на моем рабочем столе я могу получить доступ к localhost через нормальный http://localhost. Apache работает на порту 80, как обычно.
Что именно я должен сделать, чтобы достичь этого? В сети есть документация, но они либо не работают, либо слишком фрагментарны и запутанны для понимать.
Я думаю, что мне нужно внести изменения в httpd моего apache.файл conf и файл hosts. Есть идеи, какие изменения внести?
18 ответов
Localhost-это просто имя, данное для loopback, например, это похоже на то, что вы называете себя "мной" ..
чтобы просмотреть его с других компьютеров, скорее всего, вам нужно только сделать http://192.168.1.56 или http://myPcsName если это не работает, есть вероятность, что на вашем компьютере работает брандмауэр или httpd.conf слушает только 127.0.0.1
Спасибо за подробное объяснение.
чтобы уточнить, в Windows Перейдите в Панель управления - > брандмауэр, в исключениях "добавить http и порт 80". Затем в службах отметьте " http (порт веб-сервера 80)" и " https (порт веб-сервера 443)"только если вам нужен https для работы. ОК, ОК, закрыть
затем перейдите на любой компьютер в сети и введите http://computer-name (где вы меняете брандмауэр и на нем работает xampp) в вашем интернете браузер и счастливые дни:)
вот шаги, которые необходимо выполнить, если вы хотите, чтобы ваше приложение PHP было установлено на сервере LAN (не в интернете)
- получить внутренний IP или статический IP сервера (например: 192.168.1.193)
- открыть XAMPP>apache>conf>httpd.conf файл в блокноте
- Поиск слушать 80
- выше строка будет читаться как- #слушать 0.0.0.0:80 / 12.34.56.78:80
- измените IP-адрес и замените его статическим IP
- сохранить файл httpd.conf файл, гарантирующий, что сервер указывает на #Listen 192.168.1.193: 80
- в корневой конфигурации приложения.php (db connection) замените 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
надеюсь, что это помогает! :)
очень просто
- перейдите на панель управления XAMPP
- нажмите на apache > config > Apache (httpd.conf)
- искать слушать 80 и заменить на слушать 8080
- после этого проверьте свой локальный ip-адрес с помощью команду ipconfig команда (консоль cmd)
- искать Имя_сервера localhost: 80 и заменить на локальный IP-адрес:8080 (ex.192.168.1.156:8080)
- после этого откройте apache > config > Apache (httpd-xampp.conf)
- Поиск Псевдоним / phpmyadmin "C:/xampp/phpMyAdmin/" Директива Allowoverride Authconfig Позволяет требуют заменить на требовать, чтобы все предоставленные ErrorDocument 403 / error / XAMPP_FORBIDDEN.формат html.Вар
- перейти к xampp > config > нажмите на сервис и настройки порта и изменить порт apache 8080
- перезапустить xampp
- затем нажмите свой ip: 8080 (ex.192.168.1.156: 8080) с другого компьютера
Это должно быть все, что вам нужно для базовой установки
такая конфигурация не нарушает phpMyAdmin на localhost
на устройстве под управлением сервера рекомендуется использовать статический IP-адрес
в этом примере используется 192.168.1.х IP. Конфигурация сети может использовать другой 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, например разрешить из 192.168.1.xxx где xxx-IP гостевой машины. В этом случае вам может потребоваться рассмотреть статические IPs на гостевых машинах также
# 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>
перезапустить все службы и Put Online из значка в трее
Иногда ваш брандмауэр может быть проблема. Убедитесь, что вы отключили мониторинг антивирусного брандмауэра. У меня получилось.
Если вы используете XAMPP 1.8.3 Перейдите к файлу httpd-xampp.conf и искать " # # Новая концепция безопасности XAMPP # server-status | server-info))">
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
"
вырезать этот код и сохранить его где-нибудь для последующего использования i.e восстановление этой функции (помните, что удаление этого кода делает ваш компьютер уязвимым). Сохраните изменения в httpd-xampp.conf, перезапустите службы на XAMPP, и все.
Если вы подключены к сети Wi-Fi, то это намного проще. Просто найдите Ip, в котором вы подключились к Wi-Fi. Например:
ваш-ip "10.10.55.67".
затем запустите сервер xampp на своем компьютере.
затем на любом другом компьютере, подключенном к тому же Wi-Fi n/w, введите
http://your-ip
например:http://10.10.55.67
этот инструмент спас меня много, так как у меня нет прав администратора на моей машине уже был установлен nodejs. По какой-то причине конфигурация в моей сети не дает мне доступа к другим машинам, просто указывая 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
перейдите в xampp-control на панели задач
xampp-control -> Apache --> Config --> httpd.conf
Блокнот открываем с файл config
искать
слушать 80
одна строка над ним, будет что-то вроде этого: 12.34.56:80
изменить
12.34.56:80 --> <your_ip_address eg:192.168.1.5>:80
перезапустите службу apache и проверьте ее, Надеюсь, это сработает...
после обеспечения настройки конфигурации appache, как описано в других ответах на этой странице, Вам может потребоваться также открыть TCP-порты через брандмауэр, как описано здесь:
сначала перейдите в Network and Sharing center вашей машины windows.и просто выполните несколько шагов, чтобы получить свой IPv4-адрес.
поместите адрес IPv4 в другой браузер компьютера. примеру,http//192.168.0.102
Примечание
- включите Брандмауэр Windows (если не работает,в противном случае его необязательно)
вот что я сделал и работал для меня Windows 10 с:
1) Нажмите windows + r и типа cmd . В командной строке введите команду ipconfig
2) найти протокол IPv4 адрес и переименовать url вашего сайта на этот ip, например:http://192.168.0.2/example.
3) Теперь убедитесь, что ваш брандмауэр имеет доступ к Apache HTTP Server. Поиск окон для"разрешить приложению через Брандмауэр Windows " нажмите на него, затем в правом верхнем углу нажмите изменение параметров и убедитесь, что HTTP-сервер Apache имеет один тик слева и один на частном или общественном. Надеюсь, это поможет
теперь вы можете получить доступ к веб-сайту с других ПК в локальной сети
сначала перейдите в командную строку и введите
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
поэтому я пытался решить аналогичную проблему с подключением к совершенно другому серверу на моей собственной локальной сети, чтобы, когда питание прерывается, а затем восстанавливается, мой сервер возвращается в сеть, а другие системы все еще могут иметь подключение к автоматизации. Однако моя проблема заключалась в том, что DHCP иногда давал моему серверу IP-адрес diff. Этот поток ответил на мою проблему с сервером имен, который имеет windows изначально. Я подключался непосредственно к моим серверам IP add http://192.168.1.5 через пакетный файл для инициализации соединения, но когда возникают проблемы с питанием, он не будет подключаться. Я поменял .bat-файл, чтобы указать на http://DESKTOP-actualnamewhereserver:port и сделал. Проблема решена. Если я не изменю имена своих компьютеров, то когда DHCP передаст DESKTOP-actualnamewhereserver новый IP-адрес, он все равно будет идентифицировать свое собственное имя в локальной сети и, следовательно, сможет принять соединение независимо от его IP-адреса. Просто дайте другим людям на вашем беспроводная ЛВС имя вашего ПК хостинга сервера Apache и позволяет сказать, что его имя DESKTOP-DOUGHFACTORYHUT они будут вводить http://DOUGHFACTORYHUT:80 или любой номер порта, который ваша конфигурация apache установлена для размещения на Like LOCALHOST: 80, которые по существу являются тем же самым, что и ваш локальный Динамический IP-адрес, назначенный DHCP или статическим IP, который вы установили на сервер.
Я полностью согласен с BugFinder.
простыми словами, просто поместите ip-адрес 192.168.1.56 в вашем браузере работает на 192.168.1.2!
если он не работает, то есть следующие возможные причины для этого:
-
Проблема Подключения К Сети:
- прежде всего проверьте подключение к сети с помощью пинг 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.попробуйте найти его, иначе просто переустановите его и перенесите все файлы php (htdocs) на новую установку XAMPP/WAMP.