nginx + perl - stopped working after upgrading to Debina 8.1

I am currently playing around on my dev server, to try and get it running the latest Debian (Jessie). I've got it all upgraded using this tutorial:

http://linuxconfig.org/how-to-upgrade-d … le-release">http://linuxconfig.org/how-to-upgrade-debian-linux-system-from-wheezy-to-jessie-stable-release

The problem I'm not having, is that nginx doesn't seem to like running the Perl scripts. I get:

> 403 Forbidden

It was working fine before the upgrade - but it didn't mention during the upgrade that fastcgi configs had changed, and asked me if I wanted to leave it - or upgrade to the newer version. I chose to upgrade, but it seems to have broken it now. My config is pretty simple:

    location ~ \.cgi$ {
        try_files $uri =404;
        gzip off;
        include /etc/nginx/fastcgi_params;
        fastcgi_pass unix:/var/run/fcgiwrap.socket;
        fastcgi_index index.cgi;
        fastcgi_param SCRIPT_FILENAME /srv/www/site.net/www/cgi-bin/$fastcgi_script_name;
    }

Static / PHP scripts work fine - it just seems to be the Perl ones. Has anyone got any suggestions as to what I could try?

UPDATE: I updated the error_log, to spit out debug, and here is what I get.

> 2015/07/30 16:52:50 [debug] 5064#0: *48 write new buf t:1 f:0 00000000009CA978, pos 00000000009CA978, size: 162 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 http write filter: l:0 f:0 s:162

2015/07/30 16:52:50 [debug] 5064#0: *48 http cacheable: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 posix_memalign: 0000000000A1EE40:4096 @16

2015/07/30 16:52:50 [debug] 5064#0: *48 http upstream process upstream

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe read upstream: 1

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe preread: 45

2015/07/30 16:52:50 [debug] 5064#0: *48 readv: 1:3992

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe recv chain: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe buf free s:0 t:1 f:0 00000000009CFBB0, pos 00000000009CFBEB, size: 45 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe length: -1

2015/07/30 16:52:50 [debug] 5064#0: *48 input buf #0 00000000009CFBEB

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 01

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 06

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 01

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record length: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi closed stdout

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 01

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 03

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 01

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 08

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record byte: 00

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi record length: 8

2015/07/30 16:52:50 [debug] 5064#0: *48 http fastcgi sent end request

2015/07/30 16:52:50 [debug] 5064#0: *48 input buf 00000000009CFBEB 15

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe write downstream: 1

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe write downstream flush in

2015/07/30 16:52:50 [debug] 5064#0: *48 http output filter "/cgi-bin/page.cgi?"

2015/07/30 16:52:50 [debug] 5064#0: *48 http copy filter: "/cgi-bin/page.cgi?"

2015/07/30 16:52:50 [debug] 5064#0: *48 image filter

2015/07/30 16:52:50 [debug] 5064#0: *48 xslt filter body

2015/07/30 16:52:50 [debug] 5064#0: *48 http postpone filter "/cgi-bin/page.cgi?" 00000000009CAA40

2015/07/30 16:52:50 [debug] 5064#0: *48 http chunk: 15

2015/07/30 16:52:50 [debug] 5064#0: *48 write old buf t:1 f:0 00000000009CA978, pos 00000000009CA978, size: 162 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write new buf t:1 f:0 0000000000A1F010, pos 0000000000A1F010, size: 3 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write new buf t:1 f:0 00000000009CFBB0, pos 00000000009CFBEB, size: 15 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write new buf t:0 f:0 0000000000000000, pos 00000000004B2EBD, size: 2 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 http write filter: l:0 f:0 s:182

2015/07/30 16:52:50 [debug] 5064#0: *48 http copy filter: 0 "/cgi-bin/page.cgi?"

2015/07/30 16:52:50 [debug] 5064#0: *48 pipe write downstream done

2015/07/30 16:52:50 [debug] 5064#0: *48 event timer: 6, old: 1438271630291, new: 1438271630303

2015/07/30 16:52:50 [debug] 5064#0: *48 http upstream exit: 0000000000000000

2015/07/30 16:52:50 [debug] 5064#0: *48 finalize http upstream request: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 finalize http fastcgi request

2015/07/30 16:52:50 [debug] 5064#0: *48 free rr peer 1 0

2015/07/30 16:52:50 [debug] 5064#0: *48 close http upstream connection: 6

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 000000000097AD00, unused: 48

2015/07/30 16:52:50 [debug] 5064#0: *48 event timer del: 6: 1438271630291

2015/07/30 16:52:50 [debug] 5064#0: *48 reusable connection: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 http upstream temp fd: -1

2015/07/30 16:52:50 [debug] 5064#0: *48 http output filter "/cgi-bin/page.cgi?"

2015/07/30 16:52:50 [debug] 5064#0: *48 http copy filter: "/cgi-bin/page.cgi?"

2015/07/30 16:52:50 [debug] 5064#0: *48 image filter

2015/07/30 16:52:50 [debug] 5064#0: *48 xslt filter body

2015/07/30 16:52:50 [debug] 5064#0: *48 http postpone filter "/cgi-bin/page.cgi?" 00007FFF5C5525D0

2015/07/30 16:52:50 [debug] 5064#0: *48 http chunk: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write old buf t:1 f:0 00000000009CA978, pos 00000000009CA978, size: 162 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write old buf t:1 f:0 0000000000A1F010, pos 0000000000A1F010, size: 3 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write old buf t:1 f:0 00000000009CFBB0, pos 00000000009CFBEB, size: 15 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write old buf t:0 f:0 0000000000000000, pos 00000000004B2EBD, size: 2 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 write new buf t:0 f:0 0000000000000000, pos 00000000004B2EBA, size: 5 file: 0, size: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 http write filter: l:1 f:0 s:187

2015/07/30 16:52:50 [debug] 5064#0: *48 http write filter limit 0

2015/07/30 16:52:50 [debug] 5064#0: *48 posix_memalign: 00000000009D0D60:256 @16

2015/07/30 16:52:50 [debug] 5064#0: *48 malloc: 00000000009E5690:16384

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL buf copy: 162

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL buf copy: 3

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL buf copy: 15

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL buf copy: 2

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL buf copy: 5

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL to write: 187

2015/07/30 16:52:50 [debug] 5064#0: *48 SSL_write: 187

2015/07/30 16:52:50 [debug] 5064#0: *48 http write filter 0000000000000000

2015/07/30 16:52:50 [debug] 5064#0: *48 http copy filter: 0 "/cgi-bin/page.cgi?"

2015/07/30 16:52:50 [debug] 5064#0: *48 http finalize request: 0, "/cgi-bin/page.cgi?" a:1, c:1

2015/07/30 16:52:50 [debug] 5064#0: *48 set http keepalive handler

2015/07/30 16:52:50 [debug] 5064#0: *48 http close request

2015/07/30 16:52:50 [debug] 5064#0: *48 http log handler

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 00000000009CFBB0

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 000000000097BB30, unused: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 00000000009C9AC0, unused: 0

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 0000000000A1EE40, unused: 3071

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 00000000009B6230

2015/07/30 16:52:50 [debug] 5064#0: *48 hc free: 0000000000000000 0

2015/07/30 16:52:50 [debug] 5064#0: *48 hc busy: 0000000000000000 0

2015/07/30 16:52:50 [debug] 5064#0: *48 free: 00000000009E5690

2015/07/30 16:52:50 [debug] 5064#0: *48 tcp_nodelay

2015/07/30 16:52:50 [debug] 5064#0: *48 reusable connection: 1

2015/07/30 16:52:50 [debug] 5064#0: *48 event timer add: 4: 65000:1438271635303

Any ideas / suggestions?

Fortunately this is only my dev linode, but I'd like to try and get it back online (without having to revert to the image I made prior to the upgrade).

FWIW - it was working perfectly before I did the upgrade :) (I know I had fun and games getting Perl working the first time around though)

TIA

Andy

2 Replies

I would suggest starting up another Linode from scratch with Jessie and setting it up there and see if you run into the same issues or not. Generally when upgrading your distro, it's heavily recommended that you redeploy and start new.

Thanks for the reply. I wasn't aware of that (first time running my own server, so bit of a learning curve). Kinda makes sense though - seeing as it overwrites a ton of my stuff anyway ;). I'll have a play with it later today, once I've finished paid work :D

Cheers

Andy

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct