Nginx install…

Permalink
so I'm kind of new to linux and all, but I thought it would be fun to try how a apache mod_php install compared to a nginx php fpm install.
Used this guide + gd, gettext and mysql.
http://interfacelab.com/nginx-php-fpm......

And I got this far:http://67.23.25.191/

php info:http://67.23.25.191/index.html

However, when I try to install it just stops half-way, leaving a blank page…
something I'm doing wrong or does concrete not work with nginx?

philiph
 
Remo replied on at Permalink Reply
Remo
As far as I remember the problem is that nginx doesn't create a PATH_INFO varaible out of the box..

It's rather an ugly hack but I think it should work:
location ~ \.php {
   include        fcgi.conf;
   fastcgi_param URI $uri;
}


I then added an auto_prepend_script which parses URI and sets PATH_INFO

if(array_key_exists('URI',$_SERVER))
{
  preg_match('/^(.+\.php)\/(.*)$/',$_SERVER['URI'],$matches);
  if (count($matches)==3) $_SERVER['PATH_INFO'] = $matches[2];
}


I wouldn't recommend using this unless you did some testing before. I think Igor posted a smarter way to add PATH_INFO a while ago. Check his forums.. Using a prepend php script isn't that great. Nginx parses the configuration file quite quickly and it functions are good enough to manually create a path_info variable...
philiph replied on at Permalink Reply
philiph
what's a auto_prepend_script ? :) kind of new to this stuff…

my ningx conf file has the following location path info (copied from the guide):
location ~ \.php
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /var/www/default/pub$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include /usr/local/nginx/conf/fastcgi_params;
}

And I just tried installing wordpress which seems to work pretty well :)
http://67.23.25.191

my entire default site conf file looks like this:http://snippie.net/snip/0eb53b86...
philiph replied on at Permalink Reply
philiph
does concrete interfere with apc if it's installed?
philiph replied on at Permalink Reply
philiph
didn't change much…
Remo replied on at Permalink Reply
Remo
auto_prepend _script

it's a script that will be executed before each script will be executed...

Are you sure $fastcgi_script_name is correct? Doesn't make a lot of sense to me.

APC is not a problem

Did you test the PATH_INFO variable?
philiph replied on at Permalink Reply
philiph
if I understood correctly I add the auto_prepend_script to the php.ini (link to the script file) and add the fastcgi param uri thingy to the sites conf file? anyways, that didn't work so I'm probably doing something wrong :)

but the thing is, concrete gets the path info, or it says it does. First when trying nginx I got an error on the green checks for "Support for C5 Request URLs" telling me it couldn't find it, but now they are all green and dandy… but when atempting to do a install it fills 73 tables but stops there and mangages to create a config.php file consisting of a total of 0 bytes. still the path info? maybe unrelated but should installing wordpress and such also fail if that isn't set correctly?
ps I'm not sure about the $fastcgi_script_name;
just took it from a conf template for "front controller style sites"
Remo replied on at Permalink Reply
Remo
I just know that nginx has some troubles with PATH_INFO. If that isn't the case start digging around error logs similar stuff..
philiph replied on at Permalink Reply
philiph
concrete5 running nginx+php-fpm :)
http://foretagsfokus.se/

so ran out of stuff to test so I tried the new nginx 0.7 brach and voila! :)

running on a mosso cloud server… pretty neat stuff


I have like a complete line by line install guide to get this stuff online, it's a bit of a mess so I'm not going to post it here, but if you'd like it, send a pm
philiph replied on at Permalink Reply
philiph
http://nginx.pbworks.com/ done on a fresh ubuntu 9.04 install, should work almost identically on debian, with the exception of mysql 5.1…