Hoe krijg je de pages op de server: Upload

Uploaden

Als je pagina's op je computer gemaakt hebt moeten ze nog doorgestuurd worden naar de 'web-server' bij je internetprovider of andere site waar je ruimte hebt voor web pages (de 'host', gastheer, voor je pagina's). Deze web server is waar de mensen je eigenlijke pagina's ophalen, zodat je eigen computer niet altijd aan hoeft te staan. Het sturen van je pagina's naar de server noemen we 'uploaden' (het tegenovergestelde van downloaden), en dat gaat meestal via 'FTP': File Transfer Protocol, een methode om files over het internet te versturen.

Wat je nodig hebt is ruimte bij je internetprovider (of een andere provider of web hoster) waar je je web-pages mag opslaan, en een gebruikersnaam en wachtwoord voor die provider; dat heeft het FTP-programma nodig om de pagina's te mogen uploaden. Voor een lijstje met providers die gratis ruimte voor web pages aanbieden: zie onderaan mijn web pagina.

Voor een simpele site is het goed te doen om gewijzigde webpagina's handmatig op te sturen met een FTP programma als het open source programma FileZilla. Een prima en gratis FTP pakket, maar je moet wel handmatig files selecteren en opsturen. Het werkt een beetje als de Windows verkenner, waarbij je kan selecteren welke files (meestal degene die je net hebt bijgewerkt) naar de server moeten worden doorgestuurd. Alternatief kan je vaak ook vanuit het programma dat je gebruikt om de webpagina's aan te maken (als NVU/KompoZer) de zaak laten uploaden.

Plaatjes in webpagina's

Pas op: mensen komen wel eens in de problemen met plaatjes op hun website, waarbij ze na uploaden toch niet te zien zijn. Dit kan komen doordat de links naar die plaatjes niet goed in je webpage staan. Het gedeelte van de mapstructuur waarin je thuis je web site hebt staan moet dezelfde zijn als die je op de server maakt! Als je thuis je plaatjes in een map 'images' plaatst in de directory waar je je web pagina hebt staan, dan moet ook op de server je deze map 'images' maken.

Zorg dat de plaatjes bij het maken van je site in dezelfde map (of een submap daarvan, zoals 'images') staan als de web pages. Als je dit niet doet (maar ze in een map zet die heel ergens anders op je disk staat) hebben sommige web-editors de onhebbelijkheid om een 'absoluut pad' naar het plaatje te maken, dat wil zeggen een waarin het hele pad op je schijf staan (dus bijvoorbeeld 'fíle:///C:/mijn%20documenten/mijnplaatje.jpg'). Dit werkt niet op web pages. De web browser denkt dan namelijk ook dat hij het plaatje van de C:-schijf (van de gebruiker!) moet halen, in plaats van deze aan de web server te vragen, want dat staat tenslotte in de link.

Dus: plaatjes moeten altijd 'relatieve' paden hebben (of geen paden, als ze in dezelfde map als de html files staan); bij mij zet ik ze bijvoorbeeld altijd in de map 'img', en 'img' staat dan weer in dezelfde map als waar ook de web pages zelf staan. Het pad ziet er dan uit als 'img/mijnplaatje.jpg'.

Automatisch uploaden (voor Perl kenners)

Tegenwoordig doe ik het uploaden van pages en plaatjes niet meer handmatig, en heb ik daar ook een Perl scriptje voor dat netjes de bijgewerkte pagina's automatisch opstuurt naar mijn provider. Gaat heel eenvoudig dankzij de Perl Net::FTP; module, waar kant-en-klare FTP-protocol-afhandeling in zit. Een uittreksel hiervan dat de belangrijkste punten weergeeft (maar zonder fout-checking en zo, dus meer bedoeld als kort voorbeeld):

use Net::FTP;
$ftp = Net::FTP->new('
myprovider', Debug => 0); # b.v. ftp.iae.nl
if ($ftp->login('
myname', 'mypassword' ) != 1)  # eigen naam en password
{     print
"Could not log in\n"; exit(1); }     # Probleempje...
print "Logged in\n";
$ftp->binary();
$ftp->cwd( 'mydirectory' );  # only if not downloading to root
while (defined $ARGV[0])      # file names passed on command line
{    
print "Upload of $ARGV[0]\n";
      $ftp->put( shift );     # there it goes...
}
$ftp->quit;

Vergeet hier niet de rode tekst te vervangen door je eigen gegevens!!! Dit script saven in bijvoorbeeld de file 'upload.pl'. Als je hier nu nog een batch file genaamd 'upload.bat' bij maakt met het commando 'perl -w upload.pl %1 %2 %3 %4 %5 %6 %7 %8 %9' en een shortcut hierheen op je desk top plaats, kan je vanuit de verkenner tot maximaal 9 files er in een keer heen slepen, en wordt de zaak automatisch geupload... Of je vervangt de %1 .. %9 door een lijst van file namen die je altijd vast wilt uploaden.

Ik zal m'n volledige script ook nog wel eens op deze site plaatsen. Eerst nog wat kuisen...

Meer info

Meer info: kijk op mijn links pages, of ga terug naar mijn web page.