我必须使用wget
Windows 下载我的站点目录之外的文件,让我更清楚地了解。
我的网站在 Linux 服务器上运行。
Domain ---> www.example.com
/var/www/html ---> This is the my site directory
/home/username/data.csv ---> This is the file I wants to download
当我尝试从网站目录下载任何文件时,它工作正常,但没有从这里下载/home/username/data.csv
c:\wget\ wget.exe --ftp-user="username" --ftp-password="password" "www.example.com/index.php"
上述命令运行良好,“ index.php
”文件已成功下载。
但是如何/home/username/data.csv
使用来定位文件并下载wget
?
我尝试过这个但我确信这不会起作用。
c:\wget\ wget.exe --ftp-user="username" --ftp-password="password" "www.example.com/home/username/data.csv"
我可以理解为什么这个命令不起作用并返回404 error
,因为域指向/var/www/html
目录因此wget
内部读取它/var/www/html/home/username/data.csv
,这是真的,没有这样的文件。
所以我的问题是是否wget
接受这条路径?
我如何下载我的站点目录之外的文件?
答案1
我如何下载我的站点目录之外的文件?
出于安全原因,您不能要求网络服务器提供该信息。
尝试使用 ftp
wget ftp://username:[email protected]/data.csv
如果 FTP 服务不可用,请配置它或使用它sftp
,以获得更高的安全性。
答案2
您的 Web 服务器仅提供来自/var/www/html/
路径的文件,并且不知道 的存在/home/username/
。您需要在内部启动某种 Web 服务器实例,/home/username/
然后才能wget
从该目录中获取文件。
这里有几种方法可以实现这一点。
- 在您的主目录中使用 Python 启动一个临时 HTTP 服务器实例。
$ cd /home/username
$ python -m SimpleHTTPServer
(python -m http.server
在Python 3.x
)
$ wget http://example.com:8000/data.csv
- 创建指向
/home/username/
from 的符号链接/var/www/html/
,但不建议这样做,因为它会暴露您的整个主目录。或者创建指向data.csv
其自身的符号链接。
$ cd /var/www/html/
$ ln -s /home/username/data.csv data.csv
(ln -s /home/username homedir
符号链接目录)
$ wget http://www.example.com/data.csv
确保已启用符号链接(全局或仅适用于此目录)Options FollowSymLinks
请参阅这里有关符号链接的更多文档。