Page 1 of 1

nginx / fastcgi /cmsimple

Posted: 2008-05-23 13:44
by beate_r
Hallöchen,

gestern habe ich parallel zu meinm Apache nginx mit fastcgi installiert. Mehrere virtuelle Server, zwei reverse Proxies. Und natürlich klemmts irgendwo - cmsimple (ein kleines php-basiertes CMS) läßt Seitenaufrufe zu, aber keine logins, und nicht immer werden alle Bilder gezeigt. Die Konfigurationsdatei ist entsprechend der Anleitung für ein anderes CMS (Drupal) aufgebaut.

Wenn ich drüber nachdenke, tippe ich irgendwie in Richtung Session-Management unter fastcgi, hab allerdings keinerlei Erfahrung. Kennt sich hier zufällig jemand aus?

Danke und Gruß

Beate

Re: nginx / fastcgi /cmsimple

Posted: 2008-05-23 15:51
by daemotron
cmsimple greift aber nicht zufällig auf HTTP Header Authentifizierung zurück? Die funktioniert nämlich mit FastCGI nicht...

Re: nginx / fastcgi /cmsimple

Posted: 2008-05-23 16:13
by beate_r
Danke. Dem muss ich mal nachgehen.

Beate

Re: nginx / fastcgi /cmsimple

Posted: 2008-05-29 01:38
by beate_r
Hallo jfreund,

danke nochmal für den Tip. Hat mich auf die richtige Fährte gebracht. Es war tatsächlich ein Authentifizierungsproblem, das sich durch eine Ergänzung der Konfiguration beheben ließ.

Falls es jemanden interessiert, eine Beispielkonfiguration für einen vhost unter nginx:

Code: Select all

    server {
        listen          80;
        server_name     www.example.com;

        location / {
            root        /var/www/example.com/;
            index       index.html;
            fastcgi_index index.php;

            include     /etc/nginx/fastcgi_params;
            fastcgi_param SCRIPT_FILENAME /var/www/example.com$fastcgi_script_n
ame;
            fastcgi_param QUERY_STRING    $query_string;
            if (-f $request_filename) {
                break;
            }
            # CMSIMPLE specific: don't allow dynamic files in certain directories
            if ( $uri !~ "/(images|downloads)/" ) {
                fastcgi_pass  127.0.0.1:9999;
            }
        }

        # serve static files directly
        location ^/.*+.(jpg|jpeg|gif|css|png|js|ico|htm|html)$ {
            root /var/www/example.com;
            access_log        off;
            expires           30d;
        }

        # userdir simulation
        location ~ /~([a-zA-Z0-9]*)/(.*) {
            # the [a-zA-Z0-9] is for the greedy .
            root        /home/;
            autoindex   on;
            index       index.html;
            rewrite ^/~([a-zA-Z0-9]*)/(.*)$ /$1/public_html/$2 break;
        }
    }

zusätzlich die /etc/nginx/fastcgi_params folgendermaßen ergänzt werden:

Code: Select all

## bea ++
fastcgi_pass_header Authorization;
fastcgi_intercept_errors off;
LG

Beate