簡體   English   中英

如何使用Mac Terminal在服務器上托管本地主機?

[英]How do I host a localhost on my server with Mac Terminal?

我一直在使用CSS,HTML和JS在Mac上托管本地主機。 為此,我只需使用cd Desktop導航到我的文件,然后使用cd filename ,然后使用python -m SimpleHTTPServer 8000將服務器托管在本地主機上。 我知道這僅適用於托管服務器的人員,但是我想將其托管在本地網絡上,因此任何訪問localhost:8000都可以看到它。 (我可以不用localhost:8000很好,事實上,我會喜歡自定義名稱。)
謝謝
-一種

首先,如果您願意,localhost是一個“域名”名稱。 大多數情況下,它解析為127.0.0.1,這是回送ip地址(例如,指向您的計算機)。 我將假設您正在使用python 2.x

所以我們開始:

#!/usr/bin/env python
import BaseHTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler

addr = ("0.0.0.0", 8000) #host to everyone

serv = BaseHTTPServer.HTTPServer(addr, SimpleHTTPRequestHandler)

serv.serve_forever()

將其保存到python腳本並運行:

python myfile.py

如果您使用的是python 3,請使用:

python3 -m http.server --bind 0.0.0.0 8000

現在,其他人可以通過您的本地網絡訪問您的服務器,則必須為他們提供計算機的IP。 為此,請執行以下操作:

ifconfig |grep inet

您應該單獨獲得以下內容:

inet 192.168.1.2 netmask 0xffffff00 etc etc

現在,您本地網絡上的任何人都可以通過鍵入以下內容來使用您的服務器

192.168.1.2:8000 

在他們的瀏覽器中

一種將localhost暴露給其他人的簡單方法是使用ngrok ,可通過brew install ngrok或該鏈接獲得。 在上面的示例中,運行ngrok 8000將允許其他人訪問您托管的服務器。 顯然,值得注意的是,這並不限於您的本地網絡!

也許更好的選擇(如果您要做的只是托管靜態HTML,CSS和JS)將是設置一個簡單的Apache實例。 默認配置應該可以正常工作,然后人們可以使用計算機的本地IP(例如192.168.0.10:8000 )或您設置的任何端口訪問您的頁面。

編輯:正如另一個回答者所指出的那樣,SimpleHTTPServer將完成Apache所做的一切...您只需要給人們您機器的本地IP!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM