Доступ к localhost (xampp) с другого компьютера по локальной сети - как это сделать?
Я только что создал сеть 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 было установлено на локальном сервере (не в интернете)
- получить внутренний 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
- в корневой конфигурации приложения.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 (исх.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 гостевой машины. В этом случае вам может потребоваться рассмотреть статические 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>перезапустить все службы и Онлайн из значка в трее
Иногда ваш брандмауэр может быть проблема. Убедитесь, что вы отключили мониторинг антивирусного брандмауэра. Это сработало для меня.
Если вы используете XAMPP 1.8.3 Перейдите к файлу httpd-xampp.conf и искать " # # Новая концепция безопасности XAMPP # server-status / server-info))">
Require local ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </LocationMatch>"
вырежьте этот код и сохраните его где-нибудь для последующего использования, т. е. восстановления этой функции( помните, что удаление этого кода делает ваш компьютер уязвимым). Сохраните изменения в 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-порты через брандмауэр, как описано здесь:
сначала перейдите в Центр управления сетями и общим доступом вашей машины 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 иногда давал моему серверу diff IP. Этот поток ответил на мою проблему с сервером имен, который windows имеет изначально. Я подключался непосредственно к моим серверам IP add http://192.168.1.5 через пакетный файл для инициализации соединения, но когда возникают проблемы с питанием, он не будет подключаться. Я поменял его .bat-файл, чтобы указать на http://DESKTOP-actualnamewhereserver:port и сделал. Проблема решена. Если я не изменю имена своих компьютеров, то когда DHCP передаст DESKTOP-actualnamewhereserver новый IP-адрес, он все равно будет идентифицироваться как свое собственное имя в локальной сети и, следовательно, сможет принимать соединение независимо от его IP-адреса. Просто дайте другим людям на вашем беспроводная локальная сеть с именем вашего компьютера хостинг сервер Apache и допустим, его зовут рабочего стола-DOUGHFACTORYHUT они типа http://DOUGHFACTORYHUT:80 или любой номер порта, который ваш Apache config настроен для размещения на 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.



Comments