atom feed6 messages in ru.sysoev.nginxRe: mediawiki + nginx
FromSent OnAttachments
Timothy BallApr 28, 2009 1:44 pm 
Michael ShadleApr 28, 2009 2:01 pm 
Cliff WellsApr 28, 2009 2:20 pm 
Igor SysoevApr 28, 2009 11:25 pm 
Igor SysoevApr 28, 2009 11:28 pm 
Cliff WellsApr 29, 2009 8:02 am 
Subject:Re: mediawiki + nginx
From:Igor Sysoev (is@rambler-co.ru)
Date:Apr 28, 2009 11:25:42 pm
List:ru.sysoev.nginx

On Tue, Apr 28, 2009 at 04:45:17PM -0400, Timothy Ball wrote:

still sorta confused about running those two together. my end goal is to have simple urls like:

wiki.something.com/TheArticleThingie

right now under my current configs i get urls that look like this:

wiki.something.com/index.php/TheArticleThingie

which is *very close* but not quite.

To prove that i've done my share of "just google it"

i tried to cut&paste the configs from http://wiki.nginx.org/NginxMediaWiki and when i do an nginx -t it gives and error:

--snip--snip--snip-- tina:/etc/nginx/vhosts# nginx -t 2009/04/28 20:32:25 [emerg] 1172#0: invalid number of arguments in "rewrite" directive in /etc/nginx/vhosts/wiki.sunlightlabs.com.conf:22 2009/04/28 20:32:25 [emerg] 1172#0: the configuration file /etc/nginx/nginx.conf test failed --snip--snip--snip--

--snip--snip--snip-- server { listen 80; server_name wiki.something.com;

## http { root /var/www/wiki.something.com/www/;

location / { index index.php;

if ($uri ~ "index.php/") { rewrite ^/index.php/(.+) /index.php?title=$1 last; }

if (!-e $request_filename) { rewrite ^/(.+) /index.php?title=$1 last; } }

# .php5 sent to php5 location ~ .*\.php$ { include /etc/nginx/fastcgi.conf; fastcgi_index index.php;

if ($uri !~ "^/images/" ) { fastcgi_pass 127.0.0.1:10000; } fastcgi_param SCRIPT_FILENAME $document_root/index.php; fastcgi_param SCRIPT_NAME /index.php; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param PHP_SELF /index.php; fastcgi_param SCRIPT_URL /index.php; } access_log /var/log/nginx/something_wiki_access.log combined; error_log /var/log/nginx/something_wiki_error.log error;

## } } # vim: set ft=nginx:

If you have "if ($uri" in configuration, this means that your configuraiton is far from optimal and has hidden agendas.

location / { try_files $uri ${uri}index.php /index.php?title=$uri; }

location /images/ { # empty }

location ~ ^/index.php/(.+) { rewrite ^/index.php/(.+) /index.php?title=$1 last; }

location ~ .*\.php$ { fastcgi_pass 127.0.0.1:10000; ... }