การเข้าถึง localhost (xampp) จากคอมพิวเตอร์เครื่องอื่นผ่านเครือข่าย LAN - ทำอย่างไร?


150

ฉันเพิ่งตั้งค่าเครือข่าย wi-fi ที่บ้าน ฉันมีไฟล์ทั้งหมดของฉันบนคอมพิวเตอร์เดสก์ท็อปของฉัน (192.168.1.56) และต้องการเข้าถึง localhost ตรงนั้นจากคอมพิวเตอร์เครื่องอื่น (192.168.1.2)

บนเดสก์ท็อปของฉันฉันสามารถเข้าถึง localhost ผ่านhttp: // localhostปกติ Apache ทำงานบนพอร์ต 80 ตามปกติ

ฉันต้องทำอย่างไรเพื่อให้บรรลุเป้าหมายนี้ มีเอกสารประกอบในเน็ต แต่ไม่สามารถใช้งานได้หรือมีส่วนย่อยเกินไปและทำให้เกิดความสับสนในการเข้าใจ

ฉันคิดว่าฉันต้องทำการเปลี่ยนแปลงไฟล์ httpd.conf ของ apache และไฟล์ hosts มีความคิดเห็นเกี่ยวกับการเปลี่ยนแปลงที่จะทำอย่างไร



1
นี่คือสิ่งที่ฉันได้และทำงานให้ฉันบน windows 10: ไปที่ cmd และพิมพ์ ipconfig แล้วหาที่อยู่ IPv4 ของคุณและเปลี่ยนชื่อ URL ของเว็บไซต์ของคุณไปที่ IP เช่น: 192.168.0.2/example จากนั้นค้นหาหน้าต่างสำหรับ "อนุญาตแอพผ่านไฟร์วอลล์ windows" คลิกที่มันจากนั้นคลิกเปลี่ยนการตั้งค่าและตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ http apache ถูกเลือก หวังว่ามันจะช่วยได้
csandreas1

ฉันมีเว็บไซต์ชื่อ app.sitename.com ตอนนี้ฉันสามารถเข้าถึงไซต์ในพีซีเครื่องอื่นในเครือข่ายเดียวกันโดยใช้ที่อยู่ IP วิธีเข้าถึงด้วย subdomian app.ipaddress.com ไม่ทำงาน ฉันต้องทำอย่างไรเพื่อเพิ่มโดเมนย่อยในพีซีระยะไกล
vicky

คำตอบ:


112

Localhost เป็นชื่อที่กำหนดให้กับลูปแบ็คเช่นชื่อของมันที่อ้างถึงตัวคุณว่า "ฉัน"

หากต้องการดูจากคอมพิวเตอร์เครื่องอื่นโอกาสที่คุณจะต้องทำเพียงแค่http://192.168.1.56หรือhttp: // myPcsNameหากใช้งานไม่ได้มีโอกาสที่ไฟร์วอลล์จะทำงานบนคอมพิวเตอร์ของคุณหรือ httpd.conf กำลังฟังบน 127.0.0.1 เท่านั้น


httpd.conf: ฟัง 80 หากฉันต้องการเปลี่ยนแปลงสิ่งนั้นคุณจะแนะนำอะไร
bcosynot

1
ที่เพิ่งพูดฟังพอร์ต 80 มีโอกาสได้ฟังแล้ว netstat -a, ค้นหารายการบนพอร์ต 80, มันจะบอกคุณว่าไอพีใดที่มันกำลังฟังอยู่
BugFinder

1
คุณไปแล้วนั่นหมายถึงการฟังคำขอใด ๆ บนพอร์ต 80 ไม่ใช่เฉพาะโฮสต์ในพื้นที่ดังนั้นหากพีซีของคุณถูกเรียกว่า vr3609 ดังนั้น http จะนำคุณไปยังเว็บไซต์ของคุณ
BugFinder

1
ถ้าคุณ http ไปยังที่อยู่ ip ของเซิร์ฟเวอร์ของคุณจากเซิร์ฟเวอร์มันทำงานอย่างไร ถ้าเป็นเช่นนั้นมันจะแนะนำไฟร์วอลล์บนเซิร์ฟเวอร์ที่บล็อกเครื่องอื่น ๆ
BugFinder

1
ตกลง, 192.168.1.56, อันนั้นกับเว็บไซต์ทางขวา? คุณต้องดูที่การกำหนดค่าของมัน ระบบปฏิบัติการใดที่ทำงาน ซอฟต์แวร์ไฟร์วอลล์ตัวใดที่อยู่ในนั้นจะแตกต่างกันไป คุณต้องค้นหาว่าซอฟต์แวร์ไฟร์วอลล์ตัวใดอยู่ในนั้นจากนั้นจึงหาวิธีเพิ่มพอร์ต 80 เพื่อให้เครื่องอื่น ๆ ใช้งานได้หากหน้าต่างของ Windows โอกาสที่จะได้เป็นส่วนหนึ่งของซอฟต์แวร์ป้องกันไวรัสของคุณหรืออาจเป็นไมโครซอฟท์ . หากโอกาสที่ linux เป็น ipchains แต่เป็นพื้นที่ใหม่ทั้งหมดของคำถาม
BugFinder

46

ขอบคุณสำหรับคำอธิบายโดยละเอียด

เพียงแค่ทำอย่างละเอียดใน Windows ไปที่แผงควบคุม -> ไฟร์วอลล์ยกเว้น "เพิ่ม http และพอร์ต 80" จากนั้นในเครื่องหมายถูกบริการ "http (เว็บเซิร์ฟเวอร์พอร์ต 80)" และ "https (เว็บเซิร์ฟเวอร์พอร์ต 443)" เท่านั้นหากคุณต้องการ https เพื่อให้ทำงานได้เช่นกัน ตกลงตกลงปิด

จากนั้นไปที่คอมพิวเตอร์ทุกเครื่องบนเครือข่ายและพิมพ์http: // ชื่อคอมพิวเตอร์ (ที่คุณเปลี่ยนไฟร์วอลล์และให้ xampp ทำงานอยู่) ในเว็บเบราว์เซอร์และวันที่มีความสุข :)


7
ฉันไปที่แผงควบคุม> ไฟร์วอลล์ Windows> อนุญาตแอปผ่านไฟร์วอลล์ Windows> อนุญาตแอปอื่น> เรียกดู: XAMPP / apache / bin / httpd.exe และอนุญาต มันใช้งานได้แล้ว!
shasi kanth

ขอบคุณ. ทำงานได้ดี
jewelhuq

ในการเพิ่มข้อยกเว้น Windows Firewall คุณสามารถไปที่สิ่งนี้เพื่อเรียนรู้วิธี: tomshardware.com/news/…
Alejandro Nava

37

มันง่ายมาก

  1. ไปที่แผงควบคุม XAMPP ของคุณ
  2. คลิกที่ apache> config> Apache (httpd.conf) ป้อนคำอธิบายรูปภาพที่นี่
  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) ป้อนคำอธิบายรูปภาพที่นี่
  7. ค้นหา

       <Directory "C:/xampp/phpMyAdmin">
           AllowOverride AuthConfig
           **Require local**   Replace with   **Require all granted**
           ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
       </Directory>```
    
    
  8. ไปที่ xampp> config> คลิกที่การตั้งค่าบริการและพอร์ตและเปลี่ยน apache port 8080

  9. รีสตาร์ท xampp
  10. จากนั้นกด IP ของคุณ: 8080 (ex.192.168.1.156: 8080) จากคอมพิวเตอร์เครื่องอื่น

ถ้าแทน graned ทั้งหมด ... jsut IP แบบคงที่ มันจะเป็นอย่างไร
Alejandro Maliachi Quintana

ไม่ทำงาน. ในพีซีของฉันทำงานได้ดี แต่ไม่ทำงานจากพีซีเครื่องอื่น
MH Fuad

มันไม่ได้ผลสำหรับฉัน ฉันได้รับข้อผิดพลาดใบรับรอง: ใบรับรองเซิร์ฟเวอร์ไม่รวม ID ที่ตรงกับชื่อเซิร์ฟเวอร์
Jon Vote

19

เหล่านี้เป็นขั้นตอนที่ต้องปฏิบัติเมื่อคุณต้องการให้แอปพลิเคชัน PHP ของคุณติดตั้งบนเซิร์ฟเวอร์ LAN (ไม่ใช่บนเว็บ)

  1. รับ IP ภายในหรือ 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. ใน application root 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

หวังว่านี่จะช่วยได้! :)


วิธีนี้แก้ไขได้สำหรับฉัน สิ่งที่ยอดเยี่ยม! ฉันมักจะลบที่#อยู่ด้านหน้าของที่อยู่ IP ท้องถิ่นและมันก็ไม่ทำงานเมื่อฉันรวมความคิดเห็นแฮช#มันทำงานออกจากกล่องโดยไม่ต้องรีสตาร์ท VM แขกเพียงบริการ XAMPP Apache และปังมันมี ทำได้ดีนี่. ตอนนี้ฉันจะนำมันไปเชื่อมโยงกับ VirutalHosts ที่ได้รับมอบหมายบนเครื่องโฮสต์ได้อย่างไร
lowtechsun

ในการเข้าถึง VirtualHosts ที่กำหนดไว้ในเครื่องโฮสต์จากแขกฉันต้องป้อน IP ของโฮสต์และชื่อเซิร์ฟเวอร์ VirtualHost ในไฟล์โฮสต์ของแขก เสร็จสิ้น ทุกคนรู้วิธีการรับส่งข้อมูลจากเบราว์เซอร์ของผู้เยี่ยมชมไปยังเซิร์ฟเวอร์ Apache โฮสต์กับ Fiddler ทำงานบน Host แต่ไม่ได้รับปริมาณการใช้งานจากแขก
lowtechsun

สวัสดีแล้วช่วงของที่อยู่ IP สำหรับเช่น 192.168.1-100 วิธีการตั้งค่าที่?
dkjain

6

นี่คือทั้งหมดที่คุณต้องการสำหรับการตั้งค่าพื้นฐาน

การกำหนดค่าชนิดนี้ไม่ทำลาย 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 เกสต์เฉพาะเช่นอนุญาตจาก 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

ไปที่ xampp-control ในทาสก์บาร์

xampp-control -> Apache --> Config --> httpd.conf

Notepad จะเปิดขึ้นพร้อมกับไฟล์ปรับแต่ง

ค้นหา

ฟัง 80

หนึ่งบรรทัดข้างบนนั้นจะมีบางสิ่งเช่นนี้: 12.34.56: 80

เปลี่ยนมัน

12.34.56:80 --> <your_ip_address eg:192.168.1.5>:80

รีสตาร์ทเซอร์วิส apache และตรวจสอบหวังว่ามันจะทำงาน ...


5

บางครั้งไฟร์วอลล์ของคุณอาจเป็นปัญหา ตรวจสอบให้แน่ใจว่าคุณปิดใช้งานการตรวจสอบไฟร์วอลล์ป้องกันไวรัส มันใช้งานได้สำหรับฉัน


4

หากคุณกำลังใช้ XAMPP 1.8.3 นำทางไปยังไฟล์ httpd-xampp.conf และค้นหา "# # แนวคิดการรักษาความปลอดภัย XAMPP ใหม่ # # สถานะเซิร์ฟเวอร์ | เซิร์ฟเวอร์ข้อมูล))">

     Require local
     ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
     </LocationMatch>

"

ตัดรหัสนี้และบันทึกไว้ที่ใดที่หนึ่งเพื่อใช้ในภายหลังเช่นเรียกคืนคุณสมบัตินี้ (อย่าลืมลบรหัสนี้ทำให้คอมพิวเตอร์ของคุณมีช่องโหว่) บันทึกการเปลี่ยนแปลงบน httpd-xampp.conf เริ่มบริการบน XAMPP ใหม่อีกครั้ง


สำหรับ XAMPP เวอร์ชัน 7 นั้น "Require Local" ตั้งอยู่ในไฟล์ apache / conf / extra / httpd-vhosts.conf
vivanov

3

หากคุณเชื่อมต่อกับเครือข่าย Wi-Fi แสดงว่าง่ายกว่ามาก เพียงค้นหา Ip ที่คุณเชื่อมต่อกับ Wi-Fi เช่น:

your-ip คือ "10.10.55.67"

จากนั้นเริ่มเซิร์ฟเวอร์ xampp ในเครื่องของคุณ

จากนั้นในคอมพิวเตอร์เครื่องอื่นที่เชื่อมต่อกับ Wi-Fi n / w ชนิดเดียวกันให้พิมพ์

http://your-ip

เช่น:http://10.10.55.67


3

เครื่องมือนี้ช่วยฉันได้มากเนื่องจากฉันไม่มีสิทธิ์ผู้ดูแลระบบในเครื่องของฉันและติดตั้ง 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

เข้าถึง localhost จากอุปกรณ์ระยะไกล

สิ่งที่ต้องทำก่อน : ปัจจุบันเว็บไซต์ของคุณเปิดใช้งานด้วยเครื่องมือเช่นเซิร์ฟเวอร์สดhttp://localhost:8081/

a) เผยแพร่บนเครือข่ายเดียวกัน

ภายในเครือข่ายเดียวกันคุณสามารถเข้าถึงเครื่องของคุณด้วยที่อยู่ IP หรือชื่อโฮสต์ปัจจุบันของคุณ คุณสามารถค้นหาที่อยู่ IP ที่ทำงานipconfig | grep IPv4หรือชื่อโฮสต์โดยส่ง a ping -aไปยัง ip นั้น

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

หมายเหตุ : เพื่อผลลัพธ์ที่ดีที่สุดให้ใช้พอร์ต 80 เชื่อมต่อกับเครือข่ายส่วนตัวและตรวจสอบการตั้งค่าไฟร์วอลล์ของคุณ

b) เผยแพร่บนเครือข่ายใด ๆ(ง่ายขึ้น)

  1. การเลือก 1 - คุณสามารถใช้ngrokเพื่อส่งต่อพอร์ตผ่านพอร์ตสาธารณะของ ngrok

    ดาวน์โหลด ngrokและเรียกใช้คำสั่งต่อไปนี้:

    $ ./ngrok http 8081
    

  2. Opt 2 - คุณสามารถใช้localhost.runเพื่อสร้าง ssh tunnel ด้วยคำสั่งต่อไปนี้:

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


เข้าถึงอุปกรณ์ระยะไกลจาก Local Dev Tools

ในการเชื่อมต่อเครื่องมือ dev ของเบราว์เซอร์ของคุณกับอุปกรณ์ที่เชื่อมต่อให้ทำตามคำแนะนำที่เริ่มต้นใช้งานอุปกรณ์ Android Debugging ระยะไกล

  1. เปิดใช้งานตัวเลือกนักพัฒนาซอฟต์แวร์ & การดีบัก USB บนโทรศัพท์ของคุณ
  2. เสียบโทรศัพท์ของคุณเข้ากับคอมพิวเตอร์ผ่าน USB และตั้งค่าโปรโตคอล (ไม่ใช่ File / Media Transfer)
  3. เปิดเครื่องมือ Dev> เครื่องมือเพิ่มเติม> การดีบักแบบรีโมท (ลองที่นี่หากอุปกรณ์ตรวจไม่พบ )

  4. ค้นหาไซต์ของคุณและคลิกตรวจสอบซึ่งจะเปิดหน้าต่างตัวตรวจสอบใหม่


อ่านเพิ่มเติม:


2

หลังจากตรวจสอบให้แน่ใจว่าคุณมีการตั้งค่า appache ตามที่อธิบายไว้ในคำตอบอื่น ๆ ในหน้านี้คุณอาจต้องเปิดพอร์ต TCP ผ่านไฟร์วอลล์ของคุณดังที่อธิบายไว้ที่นี่:

/superuser/569227/xampp-is-not-accessible-from-other-computer-through-lan-when-firewall-is-enable


1

นี่คือสิ่งที่ฉันได้และทำงานสำหรับฉันในหน้าต่าง 10 :

1) ตีหน้าต่าง + Rและพิมพ์cmd ในคำสั่ง prompt พิมพ์ipconfig
2) พบคุณIPv4ที่อยู่และเปลี่ยนชื่อ URL ของเว็บไซต์ของคุณไปที่ IP เช่น: http://192.168.0.2/example
3) ตอนนี้ให้แน่ใจว่าคุณไฟร์วอลล์ที่มีการเข้าถึงApache HTTP Server ค้นหาหน้าต่างสำหรับ " อนุญาตแอพผ่านไฟร์วอลล์ windows " คลิกที่มันจากนั้นคลิกขวาบนการตั้งค่าการเปลี่ยนแปลง และตรวจสอบให้แน่ใจว่า Apache HTTP Server มีหนึ่งขีดทางด้านซ้ายและอีกอันหนึ่งสำหรับส่วนตัวหรือสาธารณะ หวังว่ามันจะช่วย

ตอนนี้คุณสามารถเข้าถึงเว็บไซต์ได้จากพีซีเครื่องอื่นใน LAN


1

ขั้นแรกไปที่เครือข่ายและศูนย์การแชร์ของเครื่อง windows ของคุณและทำตามขั้นตอนต่อไปนี้เพื่อรับที่อยู่ IPv4 ของคุณ เพียงแค่ดูภาพประกอบภาพ

ใส่ที่อยู่ IPv4 บนเบราว์เซอร์คอมพิวเตอร์เครื่องอื่น ตัวอย่างเช่น http // 192.168.0.102

บันทึก

  • Turn Of Windows Firewall ของคุณ (หากไม่สามารถใช้งานได้มิฉะนั้นจะเป็นตัวเลือก)

0

ก่อนอื่นให้คุณไปที่พรอมต์คำสั่งแล้วพิมพ์

Notepad C:/windows/system32/drivers/etc/hosts

จากนั้นเพิ่มที่อยู่ ip ของคุณด้านล่างแล้ว URL ของเว็บไซต์ของคุณ

ขั้นที่สองคุณไปที่ Command Prompt แล้วพิมพ์ 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
<Files ".ht*">
 Require all denied
</Files>

 replace to

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

<ไฟล์ ".ht *"> ต้องการ #Require ทั้งหมดในตัวเครื่องปฏิเสธ </Files>
asd

3
ยินดีต้อนรับสู่ Stack Overflow! ในขณะที่ข้อมูลโค้ดนี้อาจแก้ไขคำถามรวมถึงคำอธิบายช่วยปรับปรุงคุณภาพของโพสต์ของคุณ จำไว้ว่าคุณกำลังตอบคำถามสำหรับผู้อ่านในอนาคตและคนเหล่านั้นอาจไม่ทราบสาเหตุของการแนะนำรหัสของคุณ โปรดอย่าพยายามทำให้รหัสของคุณแน่นเกินไปด้วยคำอธิบายที่อธิบายซึ่งจะช่วยลดความสามารถในการอ่านของทั้งรหัสและคำอธิบาย!
kayess


0

ฉันมีปัญหานี้ ฉันใช้ XAMPP ในเครื่องเสมือนซึ่งมีการตั้งค่าเครือข่ายเป็น "NAT" ฉันเปลี่ยนเป็น "Bridged" และปัญหาได้รับการแก้ไข


0

โฮสต์ใน IP ท้องถิ่น

เปิด CMD: ipconfig

อะแดปเตอร์ LAN ไร้สาย Wi-Fi: ที่อยู่ IPv4 . . . . . . . . . . : xx.xxx.xx.xxx



0

หากใครบางคนยังพบว่ามันยากสิ่งง่าย ๆ นี้ก็ใช้ได้กับฉัน:

  1. ในระบบหลักของคุณสมมติว่าโฮสติ้งพีซี ... ไปที่แผงควบคุม> ไฟร์วอลล์ Windows Defender> อนุญาตแอพหรือคุณสมบัติผ่านไฟร์วอลล์ Windows Defender> เปลี่ยนการตั้งค่า> ค้นหา "เซิร์ฟเวอร์ Apache HTTP"> ตรวจสอบทั้งช่องทำเครื่องหมาย (ภายใต้ส่วนตัว & สาธารณะ) ดูภาพหน้าจอ

    • ในกรณีของฉันมีสองรายการ "เซิร์ฟเวอร์ Apache HTTP" ดังนั้นฉันจึงตรวจสอบทั้งกล่องกาเครื่องหมายสำหรับทั้งสองรายการ
  2. ในระบบอื่นที่เชื่อมต่อผ่านเครือข่ายเดียวกัน ... เปิดเบราว์เซอร์> ประเภท: ที่อยู่ IP ของพีซีโฮสต์ของคุณตามด้วยชื่อโครงการของคุณในแถบ URL ตัวอย่าง: 192.168.72.111/example.com/

หวังว่ามันจะช่วย! ขอบคุณ


-1

ดังนั้นฉันจึงพยายามที่จะแก้ปัญหาที่คล้ายกันกับการเชื่อมต่อกับเซิร์ฟเวอร์ที่แตกต่างกันโดยสิ้นเชิงใน LAN ของฉันเพื่อให้เมื่อไฟฟ้าถูกขัดจังหวะและคืนค่าแล้วว่าเซิร์ฟเวอร์ของฉันกลับมาออนไลน์และระบบอื่น ๆ ยังคงสามารถเชื่อมต่อกับระบบอัตโนมัติได้ อย่างไรก็ตามปัญหาของฉันคือ DHCP ที่ให้เซิร์ฟเวอร์ของฉัน IP ในบางโอกาส กระทู้นี้ตอบปัญหาของฉันกับ NAMESERVER ที่ windows มีอยู่โดยกำเนิด ฉันกำลังเชื่อมต่อโดยตรงกับเซิร์ฟเวอร์ของฉัน IP เพิ่มhttp://192.168.1.5ผ่านไฟล์แบตช์เพื่อเริ่มต้นการเชื่อมต่อ แต่เมื่อเกิดปัญหาด้านพลังงานเกิดขึ้นมันจะไม่เชื่อมต่อ ฉันเปลี่ยนไฟล์. bat ให้ชี้ไปที่http: // DESKTOP-realnamewhereserver: portและทำ แก้ไขปัญหา. หากฉันไม่เปลี่ยนชื่อคอมพิวเตอร์ของฉันเมื่อ DHCP ส่งชื่อที่อยู่ IP ใหม่ให้กับเดสก์ท็อปเซิร์ฟเวอร์จะยังคงระบุว่าเป็นชื่อของตนเองใน LAN และดังนั้นจึงสามารถยอมรับการเชื่อมต่อได้โดยไม่คำนึงถึงที่อยู่ IP เพียงแค่ให้คนอื่น ๆ ใน LAN ไร้สายของคุณชื่อของคุณโฮสต์เซิร์ฟเวอร์ Apache และให้บอกว่าชื่อของมันคือเดสก์ท็อป -DUGHFACTORYHUT พวกเขาจะพิมพ์http: // DOUGHFACTORYHUT: 80หรือหมายเลขพอร์ตใด ๆ ที่ apache config ของคุณถูกตั้งค่าให้โฮสต์ LOCALHOST: 80 ซึ่งเป็นสิ่งเดียวกันกับที่อยู่ IP แบบไดนามิกในพื้นที่ของคุณซึ่งกำหนดโดย DHCP หรือ STATIC IP ที่คุณตั้งค่าไว้ที่เซิร์ฟเวอร์


-2

ฉันเห็นด้วยอย่างเต็มที่กับ BugFinder

ในคำง่าย ๆ เพียงแค่ใส่ที่อยู่ IP 192.168.1.56ในเบราว์เซอร์ของคุณที่ทำงานบน192.168.1.2 !

ถ้ามันไม่ทำงานก็มีเหตุผลที่เป็นไปได้ดังต่อไปนี้:

  1. ปัญหาการเชื่อมต่อเครือข่าย:

    • ก่อนอื่นตรวจสอบการเชื่อมต่อเครือข่ายของคุณโดยใช้คำสั่งping 192.168.1.56ใน command prompt / terminal บนคอมพิวเตอร์ 192.168.1.2
  2. ปัญหาไฟร์วอลล์: การตั้งค่าไฟร์วอลล์ windows ของคุณไม่อนุญาตให้ใช้กฎสำหรับ XAMPP (apache) (ปัญหาน่าจะเป็นที่สุด)

    • (โซลูชัน) ไปที่การตั้งค่าไฟร์วอลล์ขั้นสูงและเพิ่มกฎขาเข้าและขาออกสำหรับไฟล์เรียกทำงาน Apache
  3. ปัญหาการกำหนดค่า Apache : apache ของคุณได้รับการกำหนดให้รับฟังเฉพาะคำขอในท้องถิ่น

    • (โซลูชัน) คุณสามารถทำได้โดยเปิดไฟล์ httpd.conf และแทนที่ Listen 127.0.0.1:80เป็นListen 80หรือ * Listen : 80
  4. พอร์ตขัดแย้งกับเซิร์ฟเวอร์อื่น ๆ (IIS ฯลฯ )

    • (โซลูชัน) ปิดเซิร์ฟเวอร์ apache จากนั้นเปิดโลคัลโฮสต์ในเบราว์เซอร์ หากได้รับคำตอบใด ๆ ให้ปิดเซิร์ฟเวอร์นั้นแล้วเริ่ม Apache

หากทั้งหมดข้างต้นใช้งานไม่ได้อาจมีปัญหาในการกำหนดค่าบนเซิร์ฟเวอร์ apache ของคุณลองค้นหามิฉะนั้นติดตั้งใหม่และโอนไฟล์ php (htdocs) ไปยังการติดตั้งใหม่ของ XAMPP / WAMP


1
ก่อนอื่นโพสต์นี้มีอายุ 5 ปีดังนั้นคำตอบนี้อาจไม่มีประโยชน์กับ OP ประการที่สองคุณสามารถใช้Markdownเพื่อปรับปรุงการจัดรูปแบบคำตอบของคุณเพื่อให้สามารถอ่านและติดตามได้ง่ายขึ้น เชื่อฉันเถอะว่านี่เป็นเรื่องดีที่จะรู้ :-)
Isiah Meadows

-3

ในการเรียกใช้เซิร์ฟเวอร์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)

ขั้นตอนในการค้นหาเครือข่ายไอพีของคุณ

MacOS

  1. ไปที่การตั้งค่าระบบ> เครือข่าย
  2. ตรวจสอบที่อยู่ IP ของเครือข่ายภายใต้การเชื่อมต่อ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.