|
Categorieën >
Overige
PHP op Windows Server 2008 met IIS7
|
|
|
offline
|
PHP beginner
|
Hallo allemaal,
Ik heb de standaard installatie van PHP uitgevoerd op Windows Server 2008 icm IIS7. De installatie verliep vlotjes. Ook heb ik PHP getest met phpinfo(), dit werkte naar behoren.
Toen ik mijn website(gemaakt en getest op een linux machine) op de Windows machine zetten, had ik te doen met een 500 - Internal server error.
Ik heb geen weet van hoe ik dit het beste kan debuggen op een Windows machine. Wellicht zitten hier ook wat Windows Server engineers op het forum 
Bedankt alvast voor jullie reacties
Martijn |
22 antwoorden
|
|
|
offline
|
PHP expert
|
Werk je met mod_rewrite? Want als je die gebruikt maar niet aan hebt staan krijg je in dat geval die error als je apache gebruikt. Weet niet of dit ook zo is met IIS.
|
|
|
|
offline
|
PHP expert
|
Een 500 error wordt meestal veroorzaakt door fouten in het script. Gebruik je ook javascript? Daar kan bovenstaande fout ook in voorkomen.
|
|
|
|
offline
|
PHP beginner
|
@Ultimatum Inderdaad, ik gebruik mod_rewrite in mijn apache configuratie. Ik weet niet of het gebruik daarvan op IIS mogelijk is, maar heb het ook getest met de gebruikelijke querystring en blijf de 500 error houden.
@Marten Javascript wordt toch client-side uitgevoerd, niet serverside? Lijkt me nogal onlogisch dat het script op het ene platform feilloos werkt en op het het andere een internel server error veroorzaakt. Tamelijk apart.
|
|
|
|
offline
|
Crew PHP
|
het gaat er niet om of je .htaccess mniet gebruikt word, t moet er gewoon niet staan  wamp vind het ook lastig.
En anders word het eerst je index kaal neerzetten, en dan stap voor stap dingen terug zetten tot het niet meer werkt.
Basic debuggen dus
|
|
|
|
offline
|
PHP beginner
|
Aha, zoiets had ik ook al in mijn gedachte, maar daarvoor is het project simpelweg te groot. Van de linux apache-server kreeg ik goede, duidelijk debug informatie retour. Op Windows Server 2008 icm IIS7 krijg je een keiharde 500 internel server error, waar ik eigenlijk niks mee kan.
Bestaat er trouwens een mod_rewrite voor IIS, zodat ik de huidige .htaccess file kan blijven gebruiken? Ik zou namelijk graag php en asp.net willen draaien op 1 platform.
|
|
|
|
offline
|
Crew hosting
|
Mod_rewrite bestaat niet voor IIS, dit kun je wel afvangen met ISAP_Rewrite (http://www.helicontech.com/isapi_rewrite/)
|
Martijn2008 – 01/01/2010 19:17 (Laatst gewijzigd op 02/01/2010 15:36)
|
|
offline
|
PHP beginner
|
ThnX, heb het even geïnstalleerd. Ga me er is in verdiepen.
Ik ben zojuist ook nog tegen een ander probleempje aangelopen. PHP-GD werkt namelijk niet, terwijl deze module wel degelijk geïnstalleerd staat. Heb dit gecontroleerd met phpinfo(). Het is namelijk niet mogelijk om een thumbnail van een jpg-afbeelding te maken.
De 500 internel server error heb ik inmiddels kunnen verhelpen door in php.ini error display aan te zetten.
-------------------------------------------------------------
GD
GD Support enabled
GD Version bundled (2.0.34 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.1.9
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabled
|
Rik – 02/01/2010 16:24
|
|
offline
|
 
Crew algemeen
|
Martijn2008 schreef: Het is namelijk niet mogelijk om een thumbnail van een jpg-afbeelding te maken. Maar dan de vraag, ligt dat aan GD of aan je script? Wat krijg je nu dan voor foutmelding?
|
|
|
|
offline
|
PHP interesse
|
Rik schreef: [..quote..]Maar dan de vraag, ligt dat aan GD of aan je script? Wat krijg je nu dan voor foutmelding?
En heb je wel de jpg-6b library? (kweetniet, dat stond bij requirements)
|
Martijn2008 – 02/01/2010 21:09 (Laatst gewijzigd op 02/01/2010 21:13)
|
|
offline
|
PHP beginner
|
Om een thumbnail on-the-fly aan te maken roep ik een script op, genaamd thumb.php. In de adresbar staat het volgende url:
http://localhost/thumb.php?im=albums/album_1/DSC01526.jpg
http://localhost/thumb.php?im=albums/album_1/DSC01526.jpg
Als error message krijg ik hetzelfde url terug in de webbrowser. Dus zo:
http://localhost/thumb.php?im=albums/album_1/DSC01526.jpg
http://localhost/thumb.php?im=albums/album_1/DSC01526.jpg
De inhoud van thumb.php is als volgt(onderstaande code werkt dus op de linux machine en niet op de Windows 2008(IIS) bak):
<?php
// Useage: thumbnail.php?im=image.jpg
// Optional: thumbnail.php?im=image.jpg&maxsize=100
$im = $_GET['im'];
$maxsize = $_GET['maxsize'];
if ($maxsize == '') {
$maxsize = 91;
}
// The file
$filename = $im;
// Set a maximum height and width
$width = $maxsize;
// $height = $maxsize;
$height = 68;
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
if ($width && ($width_orig < $height_orig)) {
$width = ($height / $height_orig) * $width_orig;
} else {
$height = ($width / $width_orig) * $height_orig;
}
// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
// Output
imagejpeg($image_p, null, 80);
imagedestroy($image);
imageDestroy($image_p);
?>
<?php // Useage: thumbnail.php?im=image.jpg // Optional: thumbnail.php?im=image.jpg&maxsize=100 $im = $_GET['im']; $maxsize = $_GET['maxsize']; if ($maxsize == '') { $maxsize = 91; } // The file $filename = $im; // Set a maximum height and width $width = $maxsize; // $height = $maxsize; $height = 68; // Content type header('Content-type: image/jpeg'); // Get new dimensions if ($width && ($width_orig < $height_orig)) { $width = ($height / $height_orig) * $width_orig; } else { $height = ($width / $width_orig) * $height_orig; } // Resample $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // Output imagejpeg($image_p, null, 80); imagedestroy($image); imageDestroy($image_p); ?>
|
Dit onderwerp is gesloten.
|
|
|