方法一:使用Python的SimpleHTTPServer進行區域網路檔案共享
Mac 自帶Python,是以不需要安裝其他軟體,一條指令即可
1):進入需要共享的檔案夾,如Public檔案夾
cd /Users/test/Public
2):啟動區域網路共享
後面可加端口,如不加80端口,預設為8000端口
sudo python -m SimpleHTTPServer 80
在浏覽器通路 ip:端口,可檢視檔案
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIjBXPt9mcm9DZzETNjhDZjRWZ0MWMlRTY1MDO0MWO5MWZhBzN5UWN08CXwsWO0EHbyomdx1Sat42YtM3b09CXul2ZpJ3bvwVbvNmLn1WavFWa0V3b05iNyA3Lc9CX6MHc0RHaiojIsJye.jpg)
優點:簡單
缺點:檔案顯示簡單,沒有詳細資訊,界面不友好
方法二:搭建apache ftp server 伺服器
1):需要搭建Java環境
- 1.1下載下傳Java JDK安裝
下載下傳位址https://www.oracle.com/java/technologies/downloads/
選擇macOS 下載下傳,在電腦上安裝即可。
- 1.2 配置java環境
進入跟目錄,建立或編輯 .bash_profile檔案,
cd /
vi .bash_profile
内容如下:
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/
CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH:
export JAVA_HOME
export CLASSPATH
export PATH
編輯完成後,重新整理配置檔案
source .bash_profile
配置完成,輸入`echo $JAVA_HOME`,可檢視剛才配置環境
test@testdeMac ~ % echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
至此java環境搭建完成。
2):下載下傳apache ftp server
下載下傳位址:
https://www.apache.org/dyn/closer.lua/mina/ftpserver/1.1.1/dist/apache-ftpserver-1.1.1.tar.gz
- 終端輸入指令下載下傳解壓
curl -O https://dlcdn.apache.org/mina/ftpserver/1.1.1/dist/apache-ftpserver-1.1.1.tar.gz
tar zxvf apache-ftpserver-1.1.1.tar.gz
- 修改使用者配置(\apache-ftpserver-1.1.1\res\conf\users.properties),如:需要添加(使用者:ftpuser 密碼:ftpuser),則在末尾添加
vim apache-ftpserver-1.1.1/res/conf/users.properties
添加使用者資訊如下:
########### 自定義使用者 ##########
#密碼
ftpserver.user.ftpuser.userpassword=ftpuser
#主目錄(檔案上傳的根目錄)
ftpserver.user.ftpuser.homedirectory=./res/home
#目前使用者可用
ftpserver.user.ftpuser.enableflag=true
#是否具有上傳權限
ftpserver.user.ftpuser.writepermission=true
#最大登入數為20(如果為0,表示無限制)
ftpserver.user.ftpuser.maxloginnumber=20
#同IP登入使用者數為2(如果為0,表示無限制)
ftpserver.user.ftpuser.maxloginperip=2
#空閑時間為300秒(如果為0,表示無限制)
ftpserver.user.ftpuser.idletime=300
#上傳速率限制為480000位元組每秒(如果為0,表示無限制)
ftpserver.user.ftpuser.uploadrate=4800
#下載下傳速率限制為480000位元組每秒(如果為0,表示無限制)
ftpserver.user.ftpuser.downloadrate=4800
- 修改伺服器配置資訊,如端口,預設為2121
vim apache-ftpserver-1.1.1/res/conf/ftpd-typical.xml
- 啟動,修改完成後,進入apache-ftpserver-1.1.1/bin目錄
cd apache-ftpserver-1.1.1/bin
啟動ftp伺服器:
./ftpd.sh res/conf/ftpd-typical.xml
提示以下資訊,啟動成功:
Using XML configuration file res/conf/ftpd-typical.xml...
FtpServer started
3):浏覽器輸入ftp://IP:端口測試
這裡測試IP為: ftp://192.168.152.180:2121/ ,浏覽器輸入即可
或者在“我的電腦” 位址欄,輸入測試。
搭建完成,檔案儲存路徑為:apache-ftpserver-1.1.1/res/home/
優點:支援檔案資料總管和浏覽器檢視下載下傳,上傳在用戶端也可以。
缺點:浏覽器支援不多,老版IE和火狐支援,最新版浏覽器,如谷歌,已不支援ftp界面顯示
方法三:搭建nginx伺服器,配置檔案管理(推薦)
mac無法直接安裝nginx,需下載下傳Homebrew工具包安裝。
1):安裝Homebrew
官網:https://brew.sh/
按照指令安裝
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
按提示輸入管理者密碼,和Enter鍵即可。
2):安裝nginx
brew install nginx
安裝完成
3):配置nginx共享配置檔案
進入nginx配置檔案夾,建立共享檔案sharefile.conf
cd /usr/local/etc/nginx/servers
輸入以下内容
server {
listen 80;
server_name localhost;
location / {
root /; #共享檔案目錄位置
#index index.html index.htm;
autoindex on; #--- 開啟nginx站點目錄索引功能
#auth_basic "pass";
#auth_basic_user_file password/htpasswd;
}
}
其他參數參考
autoindex on; #開啟nginx目錄浏覽功能
autoindex_exact_size off; #檔案大小從KB開始顯示
autoindex_localtime on; #顯示檔案修改時間為伺服器本地時間
最後啟動nginx即可通路,輸入nginx即可啟動
nginx
如果更改配置檔案後,重載配置檔案即可
nginx -s reload
最後浏覽器輸入IP位址即可通路,
這裡nginx共享檔案搭建完成。
4):配置nginx開機啟動
複制啟動檔案到/Library/LaunchDaemons/
sudo cp /usr/local/opt/nginx/homebrew.mxcl.nginx.plist /Library/LaunchDaemons/
根據自己需求更改配置檔案
sudo vim /Library/LaunchDaemons/homebrew.mxcl.nginx.plist
原配置如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>homebrew.mxcl.nginx</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/nginx/bin/nginx</string>
<string>-g</string>
<string>daemon off;</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>/usr/local</string>
</dict>
</plist>
更改後如下,更改兩點。
1:删掉daemon off,讓預設背景運作。
2:設定Nginx 服務狀态是活躍的,加上參數<key>KeepAlive</key><true/>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>homebrew.mxcl.nginx</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/nginx/bin/nginx</string>
</array>
<key>KeepAlive</key>
<true/>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>/usr/local</string>
</dict>
</plist>
注冊為系統服務,加 sudo 和不加sudo是不同的效果,非root使用者啟動不加。否則開機啟動不生效。
使用者根據自己需求看是否添加sudo啟動。
launchctl load /Library/LaunchDaemons/com.nginx.plist
非root使用者檢視是否生效,root使用者加sudo檢視。
brew services list
如狀态Status為start狀态,為啟動,stop為沒有啟動。如下圖所示
重新開機電腦後,檢視nginx是否啟動
ps -ef|grep nginx
啟動完成,nginx共享檔案完成。