Welcome! Log In Create A New Profile

Advanced

Simple Groupware nginx config

Mark Alan
January 13, 2012 03:50PM
In case anyone needs to setup Simple Groupware
http://www.simple-groupware.de/ (it is a web-based groupware that
offers email, calendaring, contacts, tasks, document management,
project management, synchronization with Outlook and cell phones,
full-text search, extensions, etc),
using Debian 6 / Ubuntu 11.10 and Nginx 1.1.12,

here is the config file provided by Simple Groupware's leader & main
developer:

(ED: it works, but it must be one of the ugliest Nginx config files that
we have seen)

# nginx - /etc/nginx/sites-available/sgw
server {
listen 80;
server_name sgw.localhost;
#root sgw; # TODO change to Simple Groupware root directory
access_log /var/log/nginx/sgw.access.log;
error_log /var/log/nginx/sgw.error.log;
root /var/www/sgw;
#index index.php;

# WebDAV server
location ~ ^/sgdav {
rewrite . /bin/webdav.php;
}
# CMS real URLs
location ~ ^/cms/ {
rewrite ^/cms/ext/(.*)$ /bin/ext/cms/$1 last;
rewrite ^/cms/thumbs/(.*)$ /bin/preview.php?filename=$1
last; rewrite ^/cms/(.*?)/file/(.*)$ /bin/cms.php?page=$1&file=$2 last;
rewrite ^/cms/(.*)$ /bin/cms.php?page=$1 last;
}
# Root
location = / {
if ($request_method = "OPTIONS") {
rewrite . /bin/webdav.php last;
}
try_files /bin/index.php /src/index.php /sgw_installer.php
=404; include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/tmp/php-fpm.socket;
#fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name; }
# Root PHP /*.php
location ~ ^/([^/]+\.php)$ {
try_files /bin/$1 /src/$1 $uri =404;
#include fastcgi_params;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/tmp/php-fpm.socket;
#fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name; #fastcgi_pass 127.0.0.1:9000; #
use spawn-fcgi (!!) }
# sgw src/*.php bin/*.php
location ~ ^/(src|bin)/([^/]+\.php|ext/.+\.php)$ {
include fastcgi_params;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/tmp/php-fpm.socket;
#fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name; #fastcgi_pass 127.0.0.1:9000; #
use spawn-fcgi (!!) }
# Redirect static files
location ~ ^/(src/|bin/)?(ext/.*|docs/.*)$ {
try_files /custom/$2 /ext/$2 /bin/$2 /src/$2 $uri =404;
}
# Drop all other stuff
location / {
if (!-f $request_filename) { return 404; }
return 403;
}
}
# --- ends here ---

M.

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

Simple Groupware nginx config

Mark Alan January 13, 2012 03:50PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 154
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready