I have a weather station website running successfully under apache2 on a fedora based server. I am in the process of transferring it to run on a raspberry pi 3 under nginx. This has transferred without a problem with the exception of a small section of PHP code which loads a graphic of the moon phase selected by date.
The html code calling the graphic is:- /var/www/html/weather/index.htm excerpt <td rowspan="3"><img src="moonphase.php" alt="Moon" width="64" align="left" border="0" height="64" hspace="10" /></td> moonphase.php calculates which image is required depending on parameters passed in moonphasetag.php. /var/www/html/weather/moonphase.php <?php error_reporting(E_ALL); require "moonphasetag.php"; function int($s){return(int)preg_replace('/[^\-\d]*(\-?\d*).*/','$1',$s);} $mp = int($MoonPercent); $lat = substr($latitude, 0, 1); $file1 = 'moon/back.jpg'; $file2 = 'moon/moon.jpg'; $img = @imagecreatetruecolor(64, 64); $imgFinal = @imagecreatetruecolor(64, 64); if ($lat == "N") { if ($mp == 0) { $file1 = 'moon/new.jpg'; copy ($file1, $file2); } elseif ($mp >= 1 AND $mp < 49) { $file1 = 'moon/waxing_crescent.jpg'; copy ($file1, $file2); } elseif ($mp == 49 OR $mp == 50) { $file1 = 'moon/first_quarter.jpg'; copy ($file1, $file2); } elseif ($mp > 50 AND $mp < 99) { $file1 = 'moon/waxing_gibbous.jpg'; copy ($file1, $file2); } elseif ($mp == 99 OR $mp == 100) { $file1 = 'moon/full.jpg'; copy ($file1, $file2); } elseif ($mp >= -99 AND $mp <= -51) { $file1 = 'moon/waning_gibbous.jpg'; copy ($file1, $file2); } elseif($mp == -50 OR $mp == -49) { $file1 = 'moon/last_quarter.jpg'; copy ($file1, $file2); } elseif ($mp >= -49 AND $mp <= -1) { $file1 = 'moon/waning_crescent.jpg'; copy ($file1, $file2); } } else { if ($mp == 0) { $file1 = 'moon/new.jpg'; copy ($file1, $file2); } elseif ($mp >= 1 AND $mp < 49) { $file1 = 'moon/swaxing_crescent.jpg'; copy ($file1, $file2); } elseif ($mp == 49 OR $mp == 50) { $file1 = 'moon/sfirst_quarter.jpg'; copy ($file1, $file2); } elseif ($mp > 50 AND $mp < 99) { $file1 = 'moon/swaxing_gibbous.jpg'; copy ($file1, $file2); } elseif ($mp == 99 OR $mp == 100) { $file1 = 'moon/full.jpg'; copy ($file1, $file2); } elseif ($mp >= -99 AND $mp <= -51) { $file1 = 'moon/swaning_gibbous.jpg'; copy ($file1, $file2); } elseif ($mp == -50 OR $mp == -49) { $file1 = 'moon/slast_quarter.jpg'; copy ($file1, $file2); } elseif ($mp >= -49 AND $mp <= -1) { $file1 = 'moon/swaning_crescent.jpg'; copy ($file1, $file2); } } $img = imagecreatefromjpeg($file2); imagecopyresampled($imgFinal, $img, 0, 0, 0, 0, 64, 64, 64, 64); header('Content-Type: image/jpeg'); imagejpeg($imgFinal, null, 100); imagedestroy($imgFinal); imagedestroy($img); ?> As far as I can tell I have set all the nginx parameters correctly:- /etc/nginx/sites-enabled/weather server { listen 80; listen [::]:80; server_name www.craythorneweather.info; root /var/www/html/weather; index index.html index.htm index.php; access_log /var/log/nginx/weather.access_log; error_log /var/log/nginx/weather.error_log info; location / { try_files $uri $uri/ =404; } location ~* \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi.conf; include /etc/nginx/fastcgi_params; } } The code works perfectly under apache but I am keen to have it operating under nginx on the RPI. Any pointers as to where I am going wrong would be appreciated. Posted at Nginx Forum: https://forum.nginx.org/read.php?2,268949,268949#msg-268949 _______________________________________________ nginx mailing list nginx@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx