snodart Posted April 30, 2013 Share Posted April 30, 2013 Hi all, I'm hoping to get some help with this problem. I'm in way over my head, but hate to trash my sites over something that is likely a simple fix. I built two sites several years ago for my artwork. I used just enough php to make things easy (such as require( ) to be able to make changes across all pages by adjusting a single .htm file). I also used php to set up a very basic image gallery (no database) that would be somewhat easy for me to update. Everything has been working great for years until my hosting company upgraded to php 5.4. Now, the two sites in wich I used php as described above return the following error message in the browser: Internal Server ErrorThe server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, webmaster@justinsnodgrass.snodart.com and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. I contacted my hosting company and they provided the following error messages from Apache: The error message being recorded by Apache when brosing those pages:[Mon Apr 29 05:40:52 2013] [error] [client 208.74.121.102] malformed header from script. Bad header=<br />: index.php[Mon Apr 29 05:43:14 2013] [error] [client 208.74.121.102] malformed header from script. Bad header=<br />: index.phpIt would appear the malformed string '<br />' is in either of those sites index.php file:[root@4056595~]cPs# grep '<br />' /home/snodart/public_html/index.php <br /><br />[root@4056595~]cPs# [root@4056595~]cPs# grep '<br />' /home/snodart/public_html/justinsnodgrass/index.php <p><span class="title">My Big Toe</span><br /> SITE 1 Here is the index page (index.php) for the error message above associated with "/home/snodart/public_html/index.php" <!--copyrith 2005. Justin Snodgrass--> <?php require ("includes/doctype.htm"); ?> <head> <title>SnodArt.com - Home</title> <?php require ("includes/meta.htm"); ?> <?php require ("includes/java.htm"); ?> </head> <?php require ("includes/body_top.htm"); ?> <div class="content"> <h3>Home</h3> <p><img class="inparagraph" src="images/justin_paint.jpg" alt="Justin Snodgrass" width="117" height="100" /> I have moved my artwork to <a href="http://www.justinsnodgrass.com">justinsnodgrass.com</a>. </p> <p> The <a href="http://snodart.com/hbe.php">DIY fimmaking equipment</a> and <a href="http://snodart.com/tutorials.php">depth of field tutorial</a> portions of this site are still getting over 1,500 hits per month. I will leave those portions up for now. The depth of field tutorial is also up on <a href="http://www.youtube.com/user/snodart#p/u/2/gIZ8bNkLL7w">youtube</a>. <br /> <br /> -Justin </p> </div><!--content--> <?php require ("includes/menu.htm"); ?> <?php require ("includes/body_bottom.htm"); ?> Here are the .htm files that the require() is grabbing above: doctype.htm <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> meta.htm <meta name="description" content="Custom creations by Justin Snodgrass including drawing, painting, sculpture, photography, computer 3D, and filmmaking." /> <meta name="keywords" content="justin snodgrass, snodart, art, drawing, draw, painting, paint, oil, portrait, oil portrait, photography, photo, sculpture, sculpt, computer, 3D, animation, 3D animation, film, filmmaking, DIY, equipment, home built, jib, dolly, crane, tripod, stabilizer, DV, video, short film, films" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="snodartCSS2.css" /> java.htm <!-- Begin Script For New Image Windows --> <script language="Javascript" type="text/javascript"> <!-- Hide script from old browsers /*Use 630x430 or 430x630 for photo new window large and 320x213 or 213x320 for med*/ function newWindowWideP(bigimagewidep) { bigWindowWideP = window.open(bigimagewidep,"bigWinWideP", "width=630,height=430") bigWindowWideP.focus() } function newWindowTallP(bigimagetallp) { bigWindowTallP = window.open(bigimagetallp,"bigWinTallP", "width=430,height=630") bigWindowTallP.focus() } function newWindowWide(bigimagewide) { bigWindowWide = window.open(bigimagewide,"bigWinWide", "width=520,height=420") bigWindowWide.focus() } function newWindowTall(bigimagetall) { bigWindowTall = window.open(bigimagetall,"bigWinTall", "width=420,height=520") bigWindowTall.focus() } function newWindowSquare(bigimagesquare) { bigWindowSquare = window.open(bigimagesquare,"bigWinSquare", "width=520,height=520") bigWindowSquare.focus() } function newWindow(bigimage) { bigWindow = window.open(bigimage,"bigWin", "width=630,height=630") bigWindow.focus() } /*Begin Script For Rollovers*/ if (document.images) { magOn = new Image magOff = new Image prevOn = new Image prevOff = new Image nextOn = new Image nextOff = new Image homeOn = new Image homeOff = new Image aboutOn = new Image aboutOff = new Image contactOn = new Image contactOff = new Image drawingsOn = new Image drawingsOff = new Image paintingsOn = new Image paintingsOff = new Image photographyOn = new Image photographyOff = new Image sculptureOn = new Image sculptureOff = new Image three_dOn = new Image three_dOff = new Image filmmakingOn = new Image filmmakingOff = new Image magOn.src = "images/mag_glass_orange.gif" magOff.src = "images/mag_glass_blue.gif" prevOn.src = "images/arrow_left_orange.gif" prevOff.src = "images/arrow_left_blue.gif" nextOn.src = "images/arrow_right_orange.gif" nextOff.src = "images/arrow_right_blue.gif" homeOn.src = "images/b_home.gif" homeOff.src = "images/w_home.gif" aboutOn.src = "images/b_about.gif" aboutOff.src = "images/w_about.gif" contactOn.src = "images/b_contact.gif" contactOff.src = "images/w_contact.gif" drawingsOn.src = "images/b_drawings.gif" drawingsOff.src = "images/w_drawings.gif" paintingsOn.src = "images/b_paintings.gif" paintingsOff.src = "images/w_paintings.gif" photographyOn.src = "images/b_photography.gif" photographyOff.src = "images/w_photography.gif" sculptureOn.src = "images/b_sculpture.gif" sculptureOff.src = "images/w_sculpture.gif" three_dOn.src = "images/b_3d.gif" three_dOff.src = "images/w_3d.gif" filmmakingOn.src = "images/b_filmmaking.gif" filmmakingOff.src = "images/w_filmmaking.gif" } else { magOn = "" magOff = "" prevOn = "" prevOff = "" nextOn = "" nextOff = "" homeOn = "" homeOff = "" aboutOn = "" aboutOff = "" contactOn = "" contactOff = "" drawingsOn = "" drawingsOff = "" paintingsOn = "" paintingsOff = "" photographyOn = "" photographyOff = "" sculptureOn = "" sculptureOff = "" three_dOn = "" three_dOff = "" filmmakingOn = "" filmmakingOff = "" document.mag = "" document.prev = "" document.next = "" document.home = "" document.about = "" document.contact = "" document.drawings = "" document.paintings = "" document.photography = "" document.sculpture = "" document.three_d = "" document.filmmaking = "" } // End hiding script from old browsers //--> </script> <!--End Script For Rollovers--> body_top.htm <!--inc_body_top.htm--> <body> <div class="main_contain"> <div class="main"> <div class="height_bar"> </div><!--height_bar--> <img id="snodart" src="images/snodart.gif" alt="Justin Snodgrass" /> menu.htm <!--inc_nav.htm--> <div class="nav"> <div class="links"> <a href="index.php"> HOME </a> <br /> <br /> <a href="filmmaking.php"> FILMMAKING </a> </div><!--links--> </div><!--nav--> <!--inc_nav.htm--> body_bottom.htm <div class="float_fix"> </div><!--float_fix--> </div><!--main--> <!--inc_footer.htm--> <div class="footer"> <p> hosted by: <a href="http://www.virtuosonetsolutions.com/affiliate/idevaffiliate.php?id=57" target="blank">Virtuoso Net Solutions</a> copyright © 2005. <a href="mailto:justin@snodart.com">Justin Snodgrass</a> <a href="http://validator.w3.org/check?uri=referer" target="blank">html</a> <a href="http://jigsaw.w3.org/css-validator/check/referer" target="blank">css</a> </p> </div><!--footer--> <!--inc_footer.htm--> </div><!--main_contain--> </body> </html> SITE 2 Below is the index page (index.php) for the site associated with "home/snodart/public_html/justinsnodgrass/index.php" in the error messages above. <!--copyrith 2011. Justin Snodgrass--> <?php require ("includes/doctype.htm"); ?> <head> <title>JUSTIN SNODGRASS - HOME</title> <?php require ("includes/meta.htm"); ?> <?php require ("includes/java.htm"); ?> </head> <?php require ("includes/header_menu.htm") ?> <div id="content"> <img src="images/mbt.jpg" width="451" height="600" alt="image" /> <p><span class="title">My Big Toe</span><br />© 2011<br />Charcoal <br />(38" X 47")</p> </div> <?php require ("includes/footer_end.htm"); ?> Here are the .htm files that the require() is grabbing above: doctype.htm <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> meta.htm <meta name="description" content="Artwork by Justin Snodgrass." /> <meta name="keywords" content="justin snodgrass, snodart, art, drawing, draw, painting, paint, oil, portrait, oil portrait, photography, photo, sculpture, sculpt" /> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="justinsnodgrass.css" /> java.htm <!-- Begin Script For New Image Windows --> <script language="Javascript" type="text/javascript"> <!-- Hide script from old browsers /*Use 630x430 or 430x630 for photo new window large and 320x213 or 213x320 for med*/ function newWindowWideP(bigimagewidep) { bigWindowWideP = window.open(bigimagewidep,"bigWinWideP", "width=630,height=430") bigWindowWideP.focus() } function newWindowTallP(bigimagetallp) { bigWindowTallP = window.open(bigimagetallp,"bigWinTallP", "width=430,height=630") bigWindowTallP.focus() } function newWindowWide(bigimagewide) { bigWindowWide = window.open(bigimagewide,"bigWinWide", "width=520,height=420") bigWindowWide.focus() } function newWindowTall(bigimagetall) { bigWindowTall = window.open(bigimagetall,"bigWinTall", "width=420,height=520") bigWindowTall.focus() } function newWindowSquare(bigimagesquare) { bigWindowSquare = window.open(bigimagesquare,"bigWinSquare", "width=520,height=520") bigWindowSquare.focus() } function newWindow(bigimage) { bigWindow = window.open(bigimage,"bigWin", "width=630,height=630") bigWindow.focus() } /*Begin Script For Rollovers*/ if (document.images) { magOn = new Image magOff = new Image prevOn = new Image prevOff = new Image nextOn = new Image nextOff = new Image homeOn = new Image homeOff = new Image aboutOn = new Image aboutOff = new Image contactOn = new Image contactOff = new Image drawingsOn = new Image drawingsOff = new Image paintingsOn = new Image paintingsOff = new Image photographyOn = new Image photographyOff = new Image sculptureOn = new Image sculptureOff = new Image three_dOn = new Image three_dOff = new Image filmmakingOn = new Image filmmakingOff = new Image magOn.src = "images/mag_glass_orange.gif" magOff.src = "images/mag_glass_blue.gif" prevOn.src = "images/arrow_left_orange.gif" prevOff.src = "images/arrow_left_blue.gif" nextOn.src = "images/arrow_right_orange.gif" nextOff.src = "images/arrow_right_blue.gif" homeOn.src = "images/b_home.gif" homeOff.src = "images/w_home.gif" aboutOn.src = "images/b_about.gif" aboutOff.src = "images/w_about.gif" contactOn.src = "images/b_contact.gif" contactOff.src = "images/w_contact.gif" drawingsOn.src = "images/b_drawings.gif" drawingsOff.src = "images/w_drawings.gif" paintingsOn.src = "images/b_paintings.gif" paintingsOff.src = "images/w_paintings.gif" photographyOn.src = "images/b_photography.gif" photographyOff.src = "images/w_photography.gif" sculptureOn.src = "images/b_sculpture.gif" sculptureOff.src = "images/w_sculpture.gif" three_dOn.src = "images/b_3d.gif" three_dOff.src = "images/w_3d.gif" filmmakingOn.src = "images/b_filmmaking.gif" filmmakingOff.src = "images/w_filmmaking.gif" } else { magOn = "" magOff = "" prevOn = "" prevOff = "" nextOn = "" nextOff = "" homeOn = "" homeOff = "" aboutOn = "" aboutOff = "" contactOn = "" contactOff = "" drawingsOn = "" drawingsOff = "" paintingsOn = "" paintingsOff = "" photographyOn = "" photographyOff = "" sculptureOn = "" sculptureOff = "" three_dOn = "" three_dOff = "" filmmakingOn = "" filmmakingOff = "" document.mag = "" document.prev = "" document.next = "" document.home = "" document.about = "" document.contact = "" document.drawings = "" document.paintings = "" document.photography = "" document.sculpture = "" document.three_d = "" document.filmmaking = "" } // End hiding script from old browsers //--> </script> <!--End Script For Rollovers--> header_menu.htm <body> <div id="container"> <div id="header"> <h1> JUSTIN SNODGRASS </h1> </div> <div id="navigation"> <ul> <li><a href="index.php">HOME</a></li> <li><a href="painting_thumbs.php">PAINTING</a></li> <li><a href="drawing_thumbs.php">DRAWING</a></li> <li><a href="sculpture_thumbs.php">SCULPTURE</a></li> <li><a href="bio.php">ABOUT</a></li> <li><a href="contact.php">CONTACT</a></li> </ul> </div> footer_end.htm <div id="footer"> Copyright © justinsnodgrass.com, 2011 </div> </div> </body> </html> Again I am over my head here, but any help would be greatly appreciated. I really don't want to have to scrap my sites over something that might be an easy fix. Many thanks for any input or advice. Quote Link to comment Share on other sites More sharing options...
requinix Posted April 30, 2013 Share Posted April 30, 2013 There's something funky with the setup. I'd pester them about this. Quote Link to comment Share on other sites More sharing options...
kicken Posted April 30, 2013 Share Posted April 30, 2013 It could be that your sites are somehow generating some sort of error message under the new PHP configuration which it was not previously (ie maybe an E_NOTICE or E_STRICT error). I don't really see anything off hand in the code provided that would cause such a message but it remains a possibility. Create another simple that that contains only: <?php phpinfo(); ?>Save it as phpinfo.php in your web root and then load it up. See if you get the same error or if you get the PHP Information page back. If that page works, I'd lean toward an error in your scripts. If that page doesn't work, then it is likely a PHP configuration issue which your host will need to look at. If you have access to PHP from the command line, then try running your page using this command, and see if any errors show up: php -d error_reporting=E_ALL /home/snodart/public_html/index.php Quote Link to comment Share on other sites More sharing options...
snodart Posted May 1, 2013 Author Share Posted May 1, 2013 Many thanks for the great comments and help. I tried phpinfo and got the same internal server error. I checked the php settings from cpanel: I realized that I had register_globals = on in php.ini for both sites. I found this after googling around about register_globals: This feature has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. I deleted php.ini (register_globals was the only thing there) and the sites are now working... sort of. The site in which I am using php for the image gallery is not functioning as expected. It was so many years ago that I don't recall, but I am guessing that I set register_globals = on for the gallery set up to work. Here is the malfunctioning site: http://justinsnodgrass.com/painting_thumbs.php Here is the php that I used. Again, I sorted all of this out many years ago and have not worked with php since. I taught myself just enough to get this set up... and to be dangerous Clicking on a thumbnail image from the thumbs.php page continues to the detail.php page with the php?name= information. With the $name variable, the correct case and associated variables are applied - and thus display the correct image and information. The $next and $previous are determined for each case as well so that clicking "next" or "prev" will bring up the images in the correct order. The page below is: http://justinsnodgrass.com/painting_thumbs.php <!--copyrith 2011. Justin Snodgrass--> <?php require ("includes/doctype.htm"); ?> <head> <title>JUSTIN SNODGRASS - PAINTING</title> <?php require ("includes/meta.htm"); ?> <?php require ("includes/java.htm"); ?> </head> <?php require ("includes/header_menu.htm") ?> <div id="content"> <p id="p_thumbs"> <a href="paintings_detail.php?name=conscious"> <img class="thumbs" src="images/conscious_thumb.jpg" alt="Conscious" width="100" height="100" /> </a> <a href="paintings_detail.php?name=roys"> <img class="thumbs" src="images/roys_thumb.jpg" alt="Roy's" width="100" height="100" /> </a> <a href="paintings_detail.php?name=lucid"> <img class="thumbs" src="images/lucid_thumb.jpg" alt="Lucid" width="100" height="100" /> </a> <a href="paintings_detail.php?name=resident"> <img class="thumbs" src="images/resident_thumb.jpg" alt="The Resident" width="100" height="100" /> </a> <a href="paintings_detail.php?name=beer"> <img class="thumbs" src="images/beer_thumb.jpg" alt="Beer" width="100" height="100" /> </a> <a href="paintings_detail.php?name=seigfried"> <img class="thumbs" src="images/seigfried_thumb.jpg" alt="Seigfried and Roy" width="100" height="100" /> </a> <a href="paintings_detail.php?name=nick"> <img class="thumbs" src="images/nick_thumb.jpg" alt="Nick" width="100" height="100" /> </a> <a href="paintings_detail.php?name=dulce"> <img class="thumbs" src="images/dulce_thumb.jpg" alt="Dulce et Decorum est" width="100" height="100" /> </a> <a href="paintings_detail.php?name=figure_study1"> <img class="thumbs" src="images/figure_study1_thumb.jpg" alt="Figure Study" width="100" height="100" /> </a> </p> <div class="float_fix"> </div><!--float_fix--> </div> <?php require ("includes/footer_end.htm"); ?> The thumbnails above link to the page below: paintings_detail.php page (all of the other gallery pages are set up the same as well). <!--copyrith 2011. Justin Snodgrass--> <?php require ("includes/doctype.htm"); ?> <head> <title>JUSTIN SNODGRASS - PAINTING</title> <?php require ("includes/meta.htm"); ?> <?php require ("includes/java.htm"); ?> </head> <?php require ("includes/header_menu.htm") ?> <div id="content"> <?php switch ($name) { case 'conscious': $title = 'Conscious'; $year = '2012'; $medium = 'Oil on Canvas'; $size = '4\' X 6\''; //WIDTH X HEIGHT $width = 401; $height = 600; $prev = 'painting_thumbs.php'; $next = 'paintings_detail.php?name=roys'; break; case 'roys': $title = 'Roy\'s'; $year = '2012'; $medium = 'Oil on Canvas'; $size = '3\' X 4\''; //WIDTH X HEIGHT $width = 449; $height = 600; $prev = 'paintings_detail.php?name=conscious'; $next = 'paintings_detail.php?name=lucid'; break; case 'lucid': $title = 'Lucid'; $year = '2011'; $medium = 'Oil on Canvas'; $size = '22" X 37"'; //WIDTH X HEIGHT $width = 357; $height = 600; $prev = 'paintings_detail.php?name=roys'; $next = 'paintings_detail.php?name=resident'; break; case 'resident': $title = 'The Resident'; $year = '2003'; $medium = 'Oil on Canvas'; $size = '3\' X 4\''; //WIDTH X HEIGHT $width = 359; $height = 500; $prev = 'paintings_detail.php?name=lucid'; $next = 'paintings_detail.php?name=beer'; break; case 'beer': $title = 'Beer'; $year = '2003'; $medium = 'Oil on Canvas'; $size = '4\' X 5\''; //WIDTH X HEIGHT $width = 442; $height = 550; $prev = 'paintings_detail.php?name=resident'; $next = 'paintings_detail.php?name=seigfried'; break; case 'seigfried': $title = 'Seigfried and Roy'; $year = '2003'; $medium = 'Oil on Canvas'; $size = '4\' X 5\''; //WIDTH X HEIGHT $width = 401; //MAX OF 320 $height = 500; //320 SHOULD BE BIGGEST FOR LAYOUT $prev = 'paintings_detail.php?name=beer'; $next = 'paintings_detail.php?name=nick'; break; case 'nick': $title = 'Nick'; $year = '2005'; $medium = 'Oil on Canvas'; $size = '3\' X 3\''; $width = 499; $height = 500; $prev = 'paintings_detail.php?name=seigfried'; $next = 'paintings_detail.php?name=dulce'; break; case 'dulce': $title = 'Dulce Et Decorum Est'; $year = '2003'; $medium = 'Acrylic on Canvas'; $size = '5\' X 4\''; //WIDTH X HEIGHT $width = 600; $height = 408; $prev = 'paintings_detail.php?name=nick'; $next = 'paintings_detail.php?name=figure_study1'; break; case 'figure_study1': $title = 'Figure Study'; $year = '2011'; $medium = 'Oil on Canvas'; $size = '12" X 9"'; //WIDTH X HEIGHT $width = 534; $height = 400; $prev = 'paintings_detail.php?name=dulce'; $next = 'painting_thumbs.php'; break; } //COMMON ADD ONS ETC TO UNIQUE VALUES $name .= '.jpg'; $p_width = $width + 4;/*image size + 4px*/ $p_height = $height + 4;/*image size + 4px*/ $p_width .= 'px'; /*adds px to end for css one this page*/ $p_height .= 'px'; $div_width = $width + 37;/*image width + 37px. 370px is size of content div!!*/ $div_width .= 'px'; echo "<p>\n"; echo "<a href=\"$prev\">< prev</a> <a href=\"painting_thumbs.php\">main</a> <a href=\"$next\">next ></a>\n"; echo "</p>\n"; echo "<img src=\"images/$name\" width=\"$width\" height=\"$height\" alt=\"image\" />\n"; echo "<p><span class=\"title\">$title</span><br />© $year<br />$medium <br />($size)</p>\n"; ?> <div class="float_fix"> </div><!--float_fix--> </div> <?php require ("includes/footer_end.htm"); ?> I will be using a viewbook account in the future to replace this set up (so I can leave all of the php magic to the pros!), but would really like to get my site working again in the meantime - if there is an easy fix. Thanks again for taking the time to help me. I really appreciate it. Quote Link to comment Share on other sites More sharing options...
trq Posted May 1, 2013 Share Posted May 1, 2013 Looks like its working to me. Whats the issue now? Quote Link to comment Share on other sites More sharing options...
snodart Posted May 1, 2013 Author Share Posted May 1, 2013 (edited) Clicking on one of the thumbnail images on this page (for example): http://justinsnodgrass.com/painting_thumbs.php should open up a larger image. It looks like the $name variable is no longer carried over to the new page So, for example, this link: <a href="paintings_detail.php?name=conscious"> <img class="thumbs" src="images/conscious_thumb.jpg" alt="Conscious" width="100" height="100" /> </a> ...should carry name=conscious to the next page: <?php switch ($name) { case 'conscious': $title = 'Conscious'; $year = '2012'; $medium = 'Oil on Canvas'; $size = '4\' X 6\''; //WIDTH X HEIGHT $width = 401; $height = 600; $prev = 'painting_thumbs.php'; $next = 'paintings_detail.php?name=roys'; break; case 'roys': $title = 'Roy\'s'; $year = '2012'; $medium = 'Oil on Canvas'; $size = '3\' X 4\''; //WIDTH X HEIGHT $width = 449; $height = 600; $prev = 'paintings_detail.php?name=conscious'; $next = 'paintings_detail.php?name=lucid'; break; ... and so on It was working until I ditched the require_globals = on. Edited May 1, 2013 by snodart Quote Link to comment Share on other sites More sharing options...
mac_gyver Posted May 1, 2013 Share Posted May 1, 2013 a url like - paintings_detail.php?name=conscious will set $_GET['name'] the easiest fix would be to add $name = isset($_GET['name']) ? $_GET['name'] : ''; to the start of your code, repeat for any other get data. if your code was also relying on register_globals for any post, cookie, files and session variables, you will need to fix more things in it to get it to work. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.