it-roy-ru.com

Доступ к localhost (xampp) с другого компьютера по локальной сети - как?

Я только что настроил Wi-Fi дома. У меня есть все мои файлы на настольном компьютере (192.168.1.56), и я хочу получить доступ к локальному хосту с другого компьютера (192.168.1.2).

На моем рабочем столе я могу получить доступ к localhost через обычный http: // localhost . Apache работает на порту 80 как обычно.

Что именно мне нужно сделать, чтобы достичь этого? В сети есть документация, но она либо не работает, либо слишком фрагментарна и запутана, чтобы ее понять.

Я думаю, что я должен внести изменения в мой файл Apache httpd.conf и файл hosts. Любые идеи относительно того, какие изменения внести?

118
bcosynot

Localhost - это просто имя, данное для обратной петли, например, как будто я называю себя «я».

Чтобы просмотреть его с других компьютеров, скорее всего, вам нужно только сделать http://192.168.1.56 или http: // myPcsName если это не сработает, есть вероятность, что на нем запущен брандмауэр ваш компьютер или httpd.conf только слушает 127.0.0.1

91
BugFinder

Спасибо за подробное объяснение.

Просто для разработки, в Windows, перейдите в Панель управления -> Брандмауэр, за исключением «добавить http и порт 80». Затем в разделе «Службы» установите флажки «http (порт 80 веб-сервера)» и «https (порт 443 веб-сервера)» ONLY, если вам нужен https для работы. Хорошо ок

Затем перейдите на любой компьютер в сети и введите http: // computer-name (где вы меняете брандмауэр и на нем запущен xampp) в своем веб-браузере и счастливых дней :)

40
Raja

Это шаги, которые нужно выполнить, если вы хотите, чтобы приложение PHP было установлено на сервере локальной сети (не в сети)

  1. Получить внутренний или статический IP-адрес сервера (например: 192.168.1.193)
  2. Откройте файл XAMPP> Apache> conf> httpd.conf в блокноте
  3. Искать Слушай 80
  4. Выше строки будет читаться как - #Listen 0.0.0.0:80/12.34.56.78:80
  5. Измените IP-адрес и замените его статическим IP-адресом.
  6. Сохраните файл httpd.conf, указав, что сервер указывает на #Listen 192.168.1.193:80
  7. В корне приложения config.php (db connection) замените localhost на IP-адрес сервера

Примечание: Если установлен брандмауэр, убедитесь, что вы добавляете http-порт 80 и 8080 к исключениям и разрешаете прослушивать . Перейдите в Панель управления> Брандмауэр Windows> Разрешить программе общаться через брандмауэр Windows> Добавить другую программу Имя: http Порт: 80 Добавьте еще один как http - 8080.

Если IIS (информационный сервер приложений Microsoft .Net) установлен с любым приложением Microsoft .Net, уже установленным на сервере, то оно уже заняло бы 80 портов. В этом случае измените #Listen 192.168.1.193:80 на #Listen 192.168.1.193:8080

Надеюсь это поможет! :)

17
Shreedhar Bhat

это очень просто 

  1. Перейти к панели управления XAMPP
  2. Нажмите на Apache> config> Apache (httpd.conf)  enter image description here
  3. Найдите Listen 80 и замените Listen 8080
  4. После этого проверьте ваш локальный ip с помощью команды ipconfig (консоль cmd)
  5. Найдите ServerName localhost: 80 и замените на ваш локальный ip: 8080 (ex.192.168.1.156: 8080)
  6. После этого откройте Apache> config> Apache (httpd-xampp.conf)  enter image description here
  7. Поиск Alias ​​/ phpmyadmin "C:/xampp/phpMyAdmin /" AllowOverride AuthConfig Требуется локальный Заменить на Требовать все предоставленные ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
  8. Перейдите в xampp> config>, нажмите на сервис и настройку порта и измените порт Apache 8080 
  9. перезапустите xampp
  10. затем нажмите ваш ip: 8080 (ex.192.168.1.156: 8080) с другого компьютера 
15
Rahul Shewale

Это должно быть все, что вам нужно для базовой настройки

Такая конфигурация не нарушает phpMyAdmin на локальном хосте

На устройстве с сервером рекомендуется статический 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, например Разрешить из 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>

Перезапустите все сервисы и Поставьте онлайн с иконки в трее

6
Razaman

Иногда ваш брандмауэр может быть проблемой. Убедитесь, что вы отключили антивирусный брандмауэр. Это сработало для меня.

5
Mateo Jovani

Если вы используете 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 и все.

4
OnsareTM

Перейти к 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 и проверьте его, Надеюсь, он должен работать ...

4
Joish

Если вы подключены к сети Wi-Fi, то это намного проще. Просто найдите Ip, в котором вы подключены к Wi-Fi. Например: 

ваш ip это "10.10.55.67". 

Затем запустите сервер xampp на вашем компьютере.

Затем на любом другом компьютере, подключенном к тому же Wi-Fi н/ж, наберите 

http://your-ip

Например: http://10.10.55.67

3
Krishna M

Этот инструмент сильно меня спас, так как у меня нет прав администратора на моей машине, и у меня уже установлены 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

http://www.browsersync.io/docs/command-line/

3
Ventura

Убедившись, что у вас настроены конфиги приложения, как описано в других ответах на этой странице, вам также может понадобиться открыть порты TCP через брандмауэр, как описано здесь:

https://superuser.com/questions/569227/xampp-is-not-accessible-from-other-computer-through-lan-when-firewall-is-enable

2
bob

Сначала перейдите в центр управления сетями и общим доступом на своей машине с Windows. И просто выполните несколько шагов, чтобы получить свой IPv4-адрес .  Just See The Image Illustration

Поместите адрес IPv4 в браузер другого компьютера. Например, http // 192.168.0.102

Заметка

  • Turn Of Your Windows Firewall (если не работает, в противном случае его необязательно)
2
That's Enam

Вот что я делал и работал для меня в windows 10:

1) Нажмите windows + r и введите cmd. В командной строке введите ipconfig
2) найдите свой ipv4 адрес и переименуйте URL вашего сайта в этот ip, например: http://192.168.0.2/example
3) Теперь убедитесь, что ваш firewall имеет доступ к Apache HTTP Server. Поищите в окнах «Разрешить приложение через брандмауэр Windows», нажмите на него, затем в правом верхнем углу нажмите изменить настройки и убедитесь, что на HTTP-сервере Apache есть один тик слева и один на приватном или общедоступном , Надеюсь, поможет

Теперь вы можете получить доступ к веб-сайту с других компьютеров в локальной сети.

1
csandreas1

Замените Require Local на Require all granted в файле xampp\Apache\conf\extra\httpd-xampp.conf.

0
Sumit

Сначала перейдите в командную строку и введите 

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
0
Carl James Omandam

У меня была эта проблема. Я использовал XAMPP на виртуальной машине, для которой в настройках сети было указано «NAT». Я изменил его на «Bridged», и проблема была решена.

0
Vidhyadhar Dharmadhikari

Доступ к localhost с удаленного устройства

Условие: Ваш веб-сайт в настоящее время использует http://localhost:8081/ с помощью инструмента, подобного live-server

а) Публикация в То же самое Сети

В той же сети вы можете получить доступ к вашему компьютеру с вашим текущим IP-адресом или именем хоста. Вы можете найти IP-адрес, на котором запущен ipconfig | grep IPv4 или имя хоста, отправив ping -a на этот ip. 

http://192.128.1.18:80/
http://hostname:80/

Примечание: для достижения наилучших результатов используйте порт 80, подключитесь к частной сети и проверьте настройки брандмауэра.

б) Публикация в любом сети (проще)

  1. Opt 1 - Вы можете использовать ngrok для переадресации портов через общедоступные порты ngrok

    Скачайте ngrok и выполните следующую команду:

    $ ./ngrok http 8081

  2. Opt 2 - Вы можете использовать localhost.run для создания туннеля ssh с помощью следующей команды:

    ssh -R 80:localhost:8081kylemit@ssh.localhost.run
    


Доступ к удаленному устройству из Local Dev Tools

Чтобы подключить инструменты разработчика вашего браузера к подключенному устройству, следуйте инструкциям на странице Начало работы с удаленной отладкой устройств Android

  1. На вашем телефоне включите «Параметры разработчика» и «Отладка по USB»
  2. Подключите телефон к компьютеру через USB и установите протокол (не для передачи файлов/мультимедиа)
  3. Откройте Инструменты разработчика> Дополнительные инструменты> Удаленная отладка (попробуйте здесь, если Устройство не обнаружено )

  4. Найдите свой сайт и нажмите «Проверить», чтобы открыть новое окно инспектора.


Дальнейшее чтение:

0
KyleMit

Запустить 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

  1. Перейдите в Системные настройки> Сеть
  2. Проверьте сетевой IP-адрес под подключенным.
0
Sumit Kasana
<Files ".ht*">
 Require all denied
</Files>

 replace to

<Files ".ht*">
 Require local
</Files>
0
asd