Usando o comando wget with windows para baixar os arquivos fora do diretório do site

0

Eu tenho que baixar arquivos que estão fora do diretório do meu site usando wget com o windows, deixe-me deixar mais claro.

Eu tenho meu site em execução no servidor 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

Quando tento baixar qualquer arquivo do diretório do site, ele está funcionando bem, mas não está sendo baixado aqui /home/username/data.csv

c:\wget\ wget.exe --ftp-user="username" --ftp-password="password" "www.example.com/index.php"

O comando acima funciona bem e o arquivo ' index.php ' é baixado com sucesso.

Mas como segmentar o arquivo /home/username/data.csv e fazer o download usando wget ?

Eu tentei com isso, mas eu tinha certeza que isso não funcionaria.

c:\wget\ wget.exe --ftp-user="username" --ftp-password="password" "www.example.com/home/username/data.csv"

Eu posso entender porque este comando não funciona e retornar 404 error , porque o domínio está apontando para o diretório /var/www/html , portanto wget o lê internamente como /var/www/html/home/username/data.csv e isso é verdade, não existe tal arquivo.

Então minha pergunta é wget aceita o caminho?

Como faço para baixar o arquivo fora do meu diretório de sites?

    
por Shakti singh 05.10.2011 / 11:37

2 respostas

1

How do I do download the file outside my site directory?

Você não pode pedir ao servidor da Web para fornecê-lo, por motivos de segurança.

Tente usar o ftp

wget ftp://username:[email protected]/data.csv

Se o serviço FTP não estiver disponível, configure-o ou use sftp , para maior segurança.

    
por 05.10.2011 / 11:57
0

Seu servidor da Web está veiculando apenas arquivos do caminho /var/www/html/ e não sabe da existência de /home/username/ . Você precisa iniciar algum tipo de instância do servidor da web dentro de /home/username/ antes de poder wget arquivos desse diretório.

Aqui estão algumas maneiras de fazer isso funcionar.

  • Inicie uma instância temporária do servidor HTTP usando o Python em seu diretório inicial.

$ cd /home/username

$ python -m SimpleHTTPServer ( python -m http.server on Python 3.x )

$ wget http://example.com:8000/data.csv

  • Crie um link simbólico para /home/username/ de /var/www/html/ , embora isso não seja recomendado, pois expõe todo o seu diretório inicial. Ou crie o link simbólico para data.csv .

$ cd /var/www/html/

$ ln -s /home/username/data.csv data.csv ( ln -s /home/username homedir para criar um link simbólico para o diretório)

$ wget http://www.example.com/data.csv

Certifique-se de ter ativado o uso de links simbólicos (globalmente ou somente para este diretório) Options FollowSymLinks Consulte aqui para obter mais documentação sobre links simbólicos.

por 05.10.2011 / 11:56

Tags