วิธีที่ง่ายที่สุดในการแสดงหน้าไปยัง localhost บน OS X


34

ฉันมีหน้าเว็บที่ฉันต้องให้บริการเพื่อให้localhostแบบอักษรปรากฏอย่างถูกต้อง

วิธีที่ง่ายที่สุดในการทำเช่นนี้ (สำหรับ Mac) คืออะไร?

คำตอบ:


66

เนื่องจาก OS X มาพร้อมกับ python2 ฉันแนะนำ:

$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...

Python ให้บริการตัวเองผ่านสิ่งอำนวยความสะดวกในตัวของมันเอง PHP ในทางกลับกันทำงานเป็นโมดูล Apache ฉันโพสต์คำตอบที่แนะนำว่าคุณควรใช้ MAMP หากคุณกำลังมองหาวิธีที่ง่ายและรวดเร็วในการตั้งค่า Mac ที่เทียบเท่ากับ LAMP stack ซึ่งรวมถึง PHP ด้วย
JakeGould

MAMP ใช้งานได้ แต่ฉันน่าจะเขียนว่า 'เร็วที่สุด' แทนที่จะเขียนง่ายที่สุดเพราะซับไลน์หนึ่งบน CLI ดูเหมือนจะดีกว่าถ้าลากไฟล์ไปมา แต่ฉันคิดว่าคำตอบของคุณมีประโยชน์สำหรับทุกคนที่ต้องการกองซ้อนแบบเต็ม
Zachary Russell Heineman

@ JakeGould PHP ไม่จำเป็นต้องเรียกใช้เป็นโมดูล Apache (หรือ nginx สำหรับเรื่องนั้น) ตั้งแต่ PHP 5.4 มีเซิร์ฟเวอร์ในตัว ในฐานะที่เป็นคนอื่น anwer กล่าวถึงphp -Sเคล็ดลับ และ "สิ่งอำนวยความสะดวกในตัว" ของไพ ธ อนก็สร้างความเข้าใจผิดเช่นเดียวกับที่-m SimpleHTTPServerเรียกใช้โมดูลจากไลบรารีเริ่มต้นซึ่งค่อนข้างแตกต่างจากฟังก์ชันในตัว
h7r

@ZacharyRussellHeineman มันจะhttp://localhost:8000ไม่ใช่:8080เหรอ? หรือว่าฉันขาดอะไรไป?
wchargin

7
ถ้าคุณมี python3 $ python3 -m http.serverติดตั้งก็จะยิ่งง่ายขึ้น:
บากูริว

34

ตั้งแต่ PHP 5.4.0, CLI SAPI มีเว็บเซิร์ฟเวอร์ในตัว รายละเอียดเพิ่มเติมในเอกสารทางการของ PHP :

  1. terminalเปิด
  2. นำทางไปยังโฟลเดอร์ (ไดเรกทอรี) ที่มีไฟล์ที่คุณต้องการให้บริการ
  3. php -S localhost:8080
  4. ไปที่http://localhost:8080ในเบราว์เซอร์

นี่ค่อนข้างช้ากว่ารุ่น Python เล็กน้อยด้วยเหตุผลบางอย่าง
0942v8653

9

ใน OS X เวอร์ชั่นเก่ามีบานหน้าต่างการตั้งค่า (การตั้งค่าระบบ→การแชร์→การแชร์เว็บ) ที่อนุญาตให้คุณเปิดใช้งานเว็บเซิร์ฟเวอร์ Apache ในตัวได้อย่างง่ายดาย เมื่อเปิดใช้งานสิ่งที่คุณต้องทำคือวางไฟล์ที่จะให้บริการในไดเรกทอรีที่มีชื่อSitesอยู่ในโฮมไดเร็กตอรี่ของคุณแล้วคุณสามารถดึงข้อมูลได้ http: //localhost/~yourusername/filename.html

น่าเสียดายบานหน้าต่างการตั้งค่าถูกลบออกใน OS X 10.8 คุณสามารถติดตั้งทดแทนสำหรับมันหรือเปิดใช้งานได้โดยใช้คำสั่งเชลล์


4

มีหลายวิธีในการทำเช่นนี้ใน Mac OS X แต่สำหรับฉันแล้ววิธีที่ง่ายที่สุด - แนวคิดและภาพ - คือผ่านส่วนต่อประสานผู้ใช้แบบกราฟิกเหมือนกับที่MAMP ให้บริการ MAMP รุ่นที่ไม่ใช่ Pro นั้นฟรี 100% และใช้งานได้ดีสำหรับการใช้งานพื้นฐานเช่นนี้:

MAMP ติดตั้งระบบเซิร์ฟเวอร์ภายในไม่กี่วินาทีบนคอมพิวเตอร์ Mac OS X ของคุณไม่ว่าจะเป็น MacBook หรือ iMac เช่นเดียวกับแพคเกจที่คล้ายกันจาก Windows- และ Linux-world MAMP ไม่มีค่าใช้จ่ายและติดตั้งได้ง่าย MAMP จะไม่ประนีประนอมการติดตั้ง Apache ที่มีอยู่แล้วที่ทำงานบนระบบของคุณ คุณสามารถติดตั้ง Apache, PHP และ MySQL ได้โดยไม่ต้องเริ่มต้นสคริปต์หรือต้องเปลี่ยนไฟล์กำหนดค่าใด ๆ ! นอกจากนี้หากไม่ต้องการใช้ MAMP อีกต่อไปเพียงแค่ลบโฟลเดอร์ MAMP และทุกอย่างกลับสู่สถานะเดิม (เช่น MAMP ไม่ได้แก้ไขระบบ "ปกติ" ใด ๆ )

ดังนั้นโดยทั่วไปคุณเพียงแค่ดาวน์โหลด MAMP และติดตั้งเหมือนกับแอปพลิเคชันอื่น ๆ แต่มันจะช่วยให้คุณสร้าง Mac ที่เทียบเท่ากับ LAMP stack (Linux Apache MySQL PHP) บนเดสก์ท็อปของคุณ และหากสิ่งที่คุณต้องการทำคือให้บริการหน้าเว็บง่ายๆlocalhostเพียงทำสิ่งนี้:

  1. ดาวน์โหลดและติดตั้ง MAMP
  2. เริ่ม MAMP
  3. เมื่อเริ่มต้นมันจะสร้าง Apache เว็บเซิร์ฟเวอร์บน localhost:8888บน
  4. ตอนนี้ถ้าคุณตรงไปที่เส้นทางนี้/Applications/MAMP/htdocsเอกสารใด ๆ localhost:8888ที่คุณวางในนั้นจะสามารถเข้าถึงได้ผ่านทาง ดังนั้นหากคุณปรับหรือเพิ่มindex.htmlหรือindex.phpไฟล์นั่นจะเป็นไฟล์หลักใหม่ที่คุณได้รับเมื่อคุณไปที่localhost:8888ไฟล์ที่จะเป็นไฟล์หลักใหม่ที่คุณได้รับเมื่อคุณไปที่
  5. หรือถ้าคุณต้องการสร้างไฟล์ / โฟลเดอร์ใหม่เพียงเพิ่มไฟล์ในโฟลเดอร์นั้นและสามารถเข้าถึงได้ผ่านเว็บเซิร์ฟเวอร์
  6. ถ้าอย่างใดlocalhost:8888ปิดบัง URL เพื่อให้คุณใช้เพียงแค่เปิดการตั้งค่าของ MAMP และตั้งค่าพอร์ตเป็นพอร์ต Apache / MySQL เริ่มต้นที่ 80 และ 3306 คุณจะต้องป้อนรหัสผ่านผู้ดูแลระบบของคุณเพื่อเปลี่ยนพอร์ตเป็นมากกว่านี้ พอร์ตมาตรฐาน localhostแต่หลังจากที่ทำคุณสามารถเข้าถึงเนื้อหาได้โดยตรงผ่านทาง

1

บางคนกำลังมองหาโซลูชันที่ง่ายที่สุดอาจต้องการใช้ GUI แทนบรรทัดคำสั่ง OS X เวอร์ชั่นเก่ากว่ามีช่องทำเครื่องหมายในบานหน้าต่างการตั้งค่าการแชร์ที่เปิดใช้งานเว็บเซิร์ฟเวอร์ คุณสามารถทำซ้ำฟังก์ชั่นนั้นด้วยฟรีแวร์https://clickontyler.com/web-sharing/


1

แอป Anvil ฟรีคือวิธีที่ฉันทำ มันทำงานร่วมกับ Hammer.app เพื่อแสดงไซต์ที่ดำเนินการล่วงหน้า แต่คุณสามารถเพิ่มโฟลเดอร์ไซต์แบบคงที่ได้ ไซต์สามารถเข้าถึงได้ผ่านส่วนขยายไซต์. dev ซึ่งเบราว์เซอร์เห็นอย่างถูกต้องในการโหลดแบบอักษรภายนอกรหัส ฯลฯ

http://anvilformac.com

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