Unix Migration FAQ v2
UNIX – FAQ Migratie naar een nieuwe server
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 1/13
Unix Migration FAQ v2
Inhoudstafel 1. 2. 3.
4.
5.
6. 7.
Inleiding ......................................................................................................3 Inloggen ......................................................................................................3 Register_globals in PHP ...............................................................................4
3.1 Wat is de optie “register_globals” in PHP en waarom staat deze af op de server ? ........4 3.2 Hoe pas ik mijn PHP scripts aan zodat deze werken met de PHP optie “register_globals” af op de server ? ..........................................................................................................4
MySQL..........................................................................................................5
4.1 4.2 4.3 4.4 4.5
Welke zijn de MySQL databases en users? ..............................................................5 Hoe verbind ik naar mijn MySQL database via het web? ...........................................5 Hoe verbind ik naar mijn database vanuit mijn PHP script? .......................................6 Hoe verbind ik naar mijn database vanuit mijn Perl script?........................................6 Welke versie van MySQL is beschikbaar op mijn Unix hosting? ..................................6
Standaard scripts .........................................................................................6
5.1 5.2 5.3
Welke standaard scripts zijn beschikbaar op mijn Unix hosting?.................................6 Hoe maak ik een teller aan op mijn Unix hosting?....................................................6 Hoe maak ik een formulier aan op mijn Unix hosting? ..............................................8
Emails versturen met eigen scripts ..............................................................8
6.1 6.2
Hoe kan ik email versturen vanop mijn Unix hosting via PHP ? ..................................8 Hoe kan ik email versturen vanop mijn Unix hosting via Perl ?...................................8
Perl ..............................................................................................................9
7.1 7.2
Welke versie van Perl is beschikbaar op mijn Unix hosting ?......................................9 Welke Perl modules zijn beschikbaar op mijn Unix hosting ?......................................9
8. Welke versie van PHP is beschikbaar op mijn Unix hosting ? .......................9 9. CGI scripts ...................................................................................................9 10. Het pad van Perl op de server .................................................................10 11. Het pad van uw website op de server .....................................................10 12. .Htaccess ................................................................................................11 12.1 12.2
Wat moet ik veranderen in mijn .htaccess bestanden?............................................ 11 Welke .htaccess functies kan ik gebruiken op mijn Unix hosting? ............................. 12
13.
Logs en statistieken ................................................................................12
14. 15.
Wat is de standaard volgorde van de index pagina’s? .............................13 Hoe activeer ik aangepaste foutmeldingen?............................................13
13.1 13.2 13.3
Welke logs en statistieken zijn beschikbaar op mijn Unix hosting?............................ 12 Wat is het formaat van de logfiles beschikbaar op mijn Unix hosting? ....................... 12 Hoe lang worden logs bijgehouden op de server? .................................................. 12
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 2/13
Unix Migration FAQ v2
1. Inleiding Om de kwaliteit van onze dienstverlening te verbeteren wordt uw Belgacom Unix Shared Hosting gemigreerd naar een nieuw platform. Hieronder vindt u een lijst van veel gestelde vragen omtrent uw Unix hosting. Mocht u uw vraag niet in deze lijst terugvinden, dan kan u ons steeds contacteren via
[email protected] of 0800/93340. Bij deze migratie wordt uw website overgezet naar een nieuwe webserver. Hierbij veranderen enkele instellingen die mogelijk een invloed hebben op het functioneren van uw website. De belangrijkste instellingen die een invloed kunnen hebben op het functioneren van uw website zijn de volgende: - de manier van inloggen op de server - het pad van uw website op de server (met oa gevolgen voor .htaccess) - het pad van toepassingen op de server (vb Perl, sendmail, ...) - de versie van toepassingen op de server (vb PHP, MySQL) - de instellingen van toepassingen op de server (vb register_globals voor PHP) - de instellingen van standaard scripts op de server (vb formulier, tellers) - de instellingen en het beheer van uw database - het formaat, de analyse en beschikbaarheid van logs op de server Hieronder gaan we in detail in op al deze veranderingen.
2. Inloggen FTP login: uw huidige FTP login blijft geldig FTP wachtwoord: uw huidig FTP wachtwoord blijft geldig FTP server: uw website (bv www.uwdomeinnaam.be) MySQL login: admin MySQL wachtwoord: uw FTP wachtwoord MySQL server: localhost HTTP logs directory: www.uwdomeinnaam.be/logs HTTP logs login:
[email protected] HTTP logs wachtwoord: uw FTP wachtwoord PHPMyAdmin URL: www.uwdomeinnaam.be/cgi-bgc/phpMyAdmin/index.php PHPMyAdmin login: admin Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 3/13
Unix Migration FAQ v2
PHPMyAdmin wachtwoord: uw FTP wachtwoord U kunt uw huidige login en wachtwoord blijven gebruiken op het nieuwe hosting platform. Wat de MySQL server betreft, deze draait nu lokaal op de webserver, vandaar dat u “localhost” dient op te geven als servernaam. De standaard MySQL gebruiker die aangemaakt werd is “admin”, het wachtwoord is dat van ftp. Het verschil met vroeger is dat u nu beschikt over een virtuele MySQL server, u kan dus zelf gebruikers en databases aanmaken zoveel u wilt. U zal merken dat er een ook een “root” user aanwezig is, deze mag u echter niet aanpassen, anders werkt uw database niet meer correct.
3. Register_globals in PHP De belangrijkste instelling die verandert in de PHP instellingen is de optie register_globals.
3.1
Wat is de optie “register_globals” in PHP en waarom staat deze af op de server ?
De optie register_globals in PHP heeft te maken met de import van variabelen door uw PHP script. Wanneer de optie aan staat, worden alle variabelen die u post naar uw script automatisch ook variabelen in uw script. Wanneer deze optie af staat, moet u elke variabele die u post naar uw script expliciet importeren in dat script, anders kan u ze niet gebruiken. De tweede instelling is veel veiliger, aangezien het hier niet mogelijk is om via verkeerde variabelen code te injecteren in uw scripts. Vandaar dat we er dan ook voor gekozen hebben om deze optie uit te zetten. Deze instelling is ook de aanbevolen instelling vandaag de dag. Het is echter mogelijk dat u nog scripts gebruikt die ontwikkeld zijn voor een versie van PHP waarin register_globals aanstaan. In dat geval zult u uw scripts moeten aanpassen, zodat ze werken zonder deze optie. Meer informatie over register_globals is beschikbaar op de website : http://www.php.net/register_globals.
3.2
Hoe pas ik mijn PHP scripts aan zodat deze werken met de PHP optie “register_globals” af op de server ?
Wanneer register_globals uit staan worden alle variablen die naar een script gepost worden opgeslagen in de arrays: Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 4/13
Unix Migration FAQ v2
$_GET , $_POST en $_REQUEST (= zowel get als post). Indien u een variable wenst te gebruiken, dient u deze op te vragen uit één van deze arrays. Een voorbeeld: u post de variable “naam” vanuit een formulier naar uw script formulier.php via POST. Om de variable “naam” in uw script formulier.php te kunnen gebruiken, vraagt u deze op als $_POST[naam] of $_REQUEST[naam]. Meer informatie over register_globals is beschikbaar op de website : http://www.php.net/register_globals.
4. MySQL U kan gebruik maken van een MySQL server voor de Unix hosting van uw databases. U kan zoveel databases en MySQL gebruikers activeren als u wilt.
4.1
Welke zijn de MySQL databases en users?
U kunt uw database enkel beheren vanop de webserver, bv via phpMyAdmin (zie Infra). Bij het inloggen zult merken dat er standaard geen databases aangemaakt zijn. In de mysql.user tabel vindt u twee gebruikers terug: “root” en “admin”. •
De “admin” gebruiker bent uzelf. Deze heeft bijna alle privileges (uitgezonderd shutdown en process). Dit betekent dat uzelf gebruikers en databases kunt aanmaken al naargelang uw behoeften.
•
De “root” gebruiker wordt gebruikt voor administratie van uw database. Gelieve dan ook niets te wijzigen aan deze gebruiker, zoniet kan uw database niet meer correct functioneren.
In de praktijk zal uw eerste taak er dus in bestaan om databases en users aan te maken. U kan de admin user gebruiken in uw scripts, als u echter veilig wilt programmeren, kunt u best een nieuwe user aanmaken, die enkel over de rechten beschikt die hij echt nodig heeft.
4.2
Hoe verbind ik naar mijn MySQL database via het web?
De MySQL database server waarover u beschikt is niet toegankelijk vanop het Internet, enkel vanop de Unix hostingserver. U hebt dus een toepassing (Perl, PHP) nodig om uw database te raadplegen. Belgacom stelt u phpMyAdmin ter beschikking, een gratis tool waarmee u uw database kunt beheren. U vindt deze tool op http://www.uwdomainnaam.be/cgi-bgc/phpMyAdmin/index.php. Om in te loggen gebruikt u de gebruikersnaam “admin” en het FTP wachtwoord van uw Unix hosting. Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 5/13
Unix Migration FAQ v2
4.3
Hoe verbind ik naar mijn database vanuit mijn PHP script?
Vanuit PHP verbindt u naar uw database met de volgende string: mysql_connect(“localhost”,”admin”,”password”); “password” moet u hier vervangen door uw wachtwoord. Hierbij gaan we uit van de standaard gebruiker “admin”. We raden u aan de gebruiker admin enkel te gebruiken voor administratieve taken en een andere gebruiker aan te maken met beperkte rechten voor uw scripts.
4.4
Hoe verbind ik naar mijn database vanuit mijn Perl script?
Vanuit Perl verbindt u naar uw database met de volgende string: DBI->connect("DBI:mysql:database:localhost",”admin”,”password”); “database” en “password” vervangt u door de naam van uw database en uw ftp wachtwoord. Hierbij gaan we uit van de standaard gebruiker “admin”. We raden u aan de gebruiker admin enkel te gebruiken voor administratieve taken en een andere gebruiker aan te maken met beperkte rechten voor uw scripts.
4.5
Welke versie van MySQL is beschikbaar op mijn Unix hosting?
Momenteel is versie 5.0 van MySQL beschikbaar.
5. Standaard scripts 5.1
Welke standaard scripts zijn beschikbaar op mijn Unix hosting?
Standaard kan u gebruik maken van een formulier en een tellerscript. Voor meer informatie over de tellers, consulteer artikel 5.2, voor meer informatie over de formulieren, consulteer artikel 5.3.
5.2
Hoe maak ik een teller aan op mijn Unix hosting?
Om een teller te activeren stuurt u een mail naar
[email protected]. In deze mail specifieert u op welke URL u de teller wenst te activeren. U dient elke URL die de teller gaat gebruiken te specifiëren. U kan meerdere tellers laten activeren met voor elke teller meerdere urls. De HTML code voor een standaard teller ziet er als volgt uit:
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 6/13
Unix Migration FAQ v2
Alle instellingen en eigenschappen van de teller staan nu automatisch op hun standaardwaarde. U kan ook de stijl van uw teller kiezen, u vindt een overzicht op : http://selfcare.belgacom.net/index.html?l=private:internet:webspace:script&a=counter:& a=style1. U heeft echter de beschikking over vele mogelijkheden om uw teller te personaliseren. U kan opties aan uw teller toevoegen door opties toe te voegen na wwwcount.cgi, van elkaar gescheiden door een “&”. Schematisch ziet dit er dan uit als volgt:
Opties: •
dd : Het schriftbeeld van de teller wijzigen Standaardwaarde: dd=A U vindt een lijst van schriftbeelden op : http://selfcare.belgacom.net/index.html?l=private:internet:webspace:script&a=counter:& a=style1.
•
md : Het aantal weergegeven cijfers U kan kiezen uit hoeveel cijfers de teller bestaat nl. van 5 tot 80 cijfers. Standaardwaarde: md=6 (teller start bij 000001, gaat tot 999999)
•
pad : Met deze optie kan u extra nullen laten weergegeven aan de linkerkant van het getal van de teller (123 in plaats van 000123). U heeft de keuze uit de waarden "T" (de optie is geactiveerd, de nullen worden getoond) en "F" (de nullen worden verwijderd). Standaardwaarde: pad=F
•
comma : U kan komma's in uw teller plaatsen voor het aangeven van duidenden, miljoenen,... (123,456 in plaats van 123456) De mogelijke waarden zijn "T" (er staan komma's in de teller) en "F" (geen komma's Standaardwaarde: comma=F Opgelet: eventuele nullen links van de teller worden weggelaten met deze optie (cfr. pad: 123 in plaats van 000,123)
•
ft : U kan rond de teller een decoratie aanbrengen. Vanaf 5 wordt de rand driedimensionaal weergegeven De waarden van deze optie lopen van 0 tot ... Standaardwaarde: ft=0
•
frgb : Kies een kleur voor de rand rond uw teller De waarden voor deze optie dienen te worden ingegeven volgens het RGB-schema. U kan deze optie enkel gebruiken samen met ft.
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 7/13
Unix Migration FAQ v2
Standaardwaarde: frgb=648BD8
5.3
•
sh : Hiermee maakt u de teller onzichtbaar voor bezoekers. De werking ervan stopt niet, de teller is enkel niet langer zichtbaar Mogelijke waarden zijn "T" (de teller is zichtbaar) en "F" (de teller is niet zichtbaar). Standaardwaarde: T
•
angle : U kan de teller in een bepaalde hoek plaatsen De mogelijke waarden zijn: 90, 180 en 270 Standaardwaarde: geen rotatie
Hoe maak ik een formulier aan op mijn Unix hosting?
Op uw Unix hosting is een standaard formulierscript beschikbaar. Hieronder vindt u de syntax terug:
De opties “subject” en “lang” zijn optioneel.
6. Emails versturen met eigen scripts 6.1
Hoe kan ik email versturen vanop mijn Unix hosting via PHP ?
Hiervoor kan u gebruik maken van de mailfunctie in php. De correcte syntax van het php mail commando op onze Unix hostingservers is als volgt: mail("bestemmeling","onderwerp","inhoud","From: afzenderadres","-f afzenderadres") Vergeet niet de variabele –f te specifieren.
6.2
Hoe kan ik email versturen vanop mijn Unix hosting via Perl ?
Indien u in uw Perl scripts een mailserver kan specifiëren, raden we u aan te versturen via relay.skynet.be. U kan ook mails versturen via het programma /usr/local/bin/msmtp. U vindt hierover meer informatie op : http://msmtp.sourceforge.net/.
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 8/13
Unix Migration FAQ v2
Mail versturen via sendmail wordt niet meer ondersteund.
7. Perl 7.1
Welke versie van Perl is beschikbaar op mijn Unix hosting ?
U kan de Perl versie op de Unix hostingserver op elk moment opvragen door het volgende cgi script op uw Unix hosting te plaatsen: #!/usr/local/bin/perl print "Content-type: text/plain", "\n\nPerl version is $]\n"; De versie op moment van schrijven is 5.00503.
7.2
Welke Perl modules zijn beschikbaar op mijn Unix hosting ?
U vindt een overzicht van de beschikbare Perl modules op : http://unix-ipo.testdomain.be/cgi/modules.cgi.
8. Welke versie van PHP is beschikbaar op mijn Unix hosting ? U kunt de versie van PHP op de Unix hostingserver op elk moment achterhalen door het volgende php script in een php pagina op uw Unix hosting te plaatsen en op te vragen: Momenteel zijn zowel de versies 4 en 5 beschikbaar. Bestanden met de extentie .php worden automatisch onder versie 4 uitgevoerd. Om versie 5 te gebruiken geeft u uw bestanden de extentie .php5 mee. U kan ook de phpinfo van beiden opvragen door te surfen naar: www.uwdomeinnaam.be/cgi-bgc/phpinfo.php en www.uwdomeinnaam.be/cgi-bgc/phpinfo.php5 Login:
[email protected] Wachtwoord: uw FTP wachtwoord
9. CGI scripts Het is mogelijk om cgi scripts (Perl) uit te voeren op de server. U kunt cgi scripts plaatsen in elke folder op uw website.
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 9/13
Unix Migration FAQ v2
Een cgi script moet de extensie .cgi hebben (niet .pl) en uitvoerbaar zijn (chmod 755). Het pad naar Perl op de Unix hostingserver is /usr/bin/perl. /usr/local/bin/perl bestaat ook, en is een symbolic link naar /usr/bin/perl. De eerste lijn van een Perl cgi script is dus altijd: #!/usr/bin/perl
10. Het pad van Perl op de server Het pad naar Perl op de Unix hostingserver is /usr/bin/perl. /usr/local/bin/perl bestaat ook, en is een symbolic link naar /usr/bin/perl.
11. Het pad van uw website op de server Wat is het absolute pad van mijn Unix hosting op de server? Het absolute pad van uw website op de Unix server is de directory op de server waar uw website zich bevindt. Aangezien uw website van server verandert, zal ook het absolute pad van uw website veranderen. In veel gevallen heeft dit geen enkele invloed voor de functionaliteit van uw website. Indien u echter in scripts het absolute pad op de server gebruikt, zult u dit moeten aanpassen als gevolg van deze migratie. Een voorbeeld van een script dat gebruik maakt van het absolute pad op de server is .htaccess. Gezien het feit dat het absolute pad op de server in de toekomst ook kan wijzigen, raden we u aan om uit te kijken naar alternatieven voor deze scripts, waarbij u het absolute pad niet meer nodig heeft. We kunnen u helaas niet garanderen dat u steeds tijdig op de hoogte zal gebracht worden als er op dit vlak dringende wijzigingen gedaan moeten worden, in het kader van het onderhoud van onze diensten. U kan het absolute pad van uw website op de Unix hosting server te weten komen via de environment variable DOCUMENT_ROOT, deze kan u opvragen via Perl of PHP. •
Via PHP plaatst u de volgende php code in een php bestand op uw Unix hosting: Deze en andere variabelen zijn ook beschikbaar via de functie phpinfo:
•
Via Perl plaatst u de volgende code in een cgi bestand op uw Unix hosting:
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 10/13
Unix Migration FAQ v2
#!/usr/local/bin/perl print "Content-type: text/html", "\n\n$ENV{DOCUMENT_ROOT}"; •
Door te surfen naar de volgende URL: www.uwdomeinnaam.be/cgi-bgc/phpinfo.php of www.uwdomeinnaam.be/cgi-bgc/phpinfo.php5 Login:
[email protected] Wachtwoord: uw FTP wachtwoord
12. .Htaccess 12.1 Wat moet ik veranderen in mijn .htaccess bestanden? Indien u gebruik maakt van .htaccess voor het beveiligen van mappen met een wachtwoord, dient u het absolute pad in het .htaccess bestand aan te passen. De lijn die u moet aanpassen begint met AuthUserFile. AuthUserFile
AuthGroupFile /dev/null AuthName EnterPassword AuthType Basic require user <user1> <user2> : om dit te weten te komen, moet u het absolute pad van uw website op de server weten. Voor manieren om dit absolute pad te bekomen, consulteer punt 11. Een voorbeeld van een .htaccess bestand: AuthUserFile /users/5/web/00/00/47/52/29/map/.htpasswd AuthGroupFile /dev/null AuthName EnterPassword AuthType Basic require user test Gezien het feit dat het absolute pad op de server in de toekomst ook kan wijzigen, raden we u aan om uit te kijken naar alternatieven voor deze scripts, waarbij u het absolute pad niet meer nodig heeft. We kunnen u helaas niet garanderen dat u steeds tijdig op de hoogte zal gebracht worden als er op dit vlak dringende wijzigingen gedaan moeten worden, in het kader van het onderhoud van onze diensten. Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 11/13
Unix Migration FAQ v2
12.2 Welke .htaccess functies kan ik gebruiken op mijn Unix hosting? Voor wie een basiskennis van Apache heeft, u kan de AuthConfig en Limit directives gebruiken op ons nieuw hostingplatform. In de praktijk wil dit zeggen dat u enkel directories met een wachtwoord kan beveiligen. Andere .htaccess opties (zoals aangepaste foutmeldingen of ip filtering) zijn niet meer beschikbaar. Voor de aangepaste foutmeldingen bieden we u wel een nieuw alternatief aan, cfr punt 15.
13. Logs en statistieken 13.1 Welke logs en statistieken zijn beschikbaar op mijn Unix hosting? Op uw Unix hosting is een map logs beschikbaar, zowel via http als ftp. In deze map vindt u twee bestanden: access en access_old : • het bestand access bevat de logfiles van de huidige maand, • het bestand access_old deze van de vorige maand. U kunt deze bestanden downloaden voor analyse. De logs worden bijna in real-time beschikbaar gesteld. Error logs zijn niet beschikbaar. Wanneer u surft naar http://www.uwdomeinnaam.be/logs/ kan u statistieken opvragen van uw website. Hiervoor logt u in met uw login, gevolgd door “@sharedhosting.skynet.be” en uw wachtwoord. De statistieken worden gegenereerd door Webalizer. Meer informatie over dit programma vindt u op http://www.mrunix.net/webalizer/.
13.2 Wat is het formaat van de logfiles beschikbaar op mijn Unix hosting? Hieronder vindt u een voorbeeld van een lijn uit een logfile op onze Unix hostings: 81.240.255.55 - [email protected] [27/Jan/2006:09:44:02 +0100] "GET /logs/req.png HTTP/1.1" 200 4257 "www.uwdomeinnaam.be" "http://www.uwdomeinnaam.be/logs/index.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.1)"
13.3 Hoe lang worden logs bijgehouden op de server? De logs van de huidige en de vorige maand zijn beschikbaar op de Unix hosting. De gegevens in de statistieken worden langer bijgehouden.
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 12/13
Unix Migration FAQ v2
14. Wat is de standaard volgorde van de index pagina’s? Deze is als volgt: index.html index.htm welcome.html welcome.htm index.php index.php4 index.phtml index.cgi index.shtml main.htm default.html default.htm start.html index.vml index.wml
15. Hoe activeer ik aangepaste foutmeldingen? Wanneer een bezoeker een pagina opvraagt die niet bestaat, zal de server een foutmelding en – nummer genereren. Het is mogelijk de standaard foutmelding te vervangen door een foutmelding die u zelf bepaalt. Hiervoor creëert u een map met de naam ErrorDocument in de root van uw Unix hosting. In die map plaatst u een bestand de naam 404.html voor een 404 (Page Not Found) fout. In deze pagina kan u dan een aangepaste foutmelding definiëren.
Shared Hosting Unix FAQ v5 – NL 28032006
Pagina 13/13