[sisyphus] apache2 seiroswiki

Sergey Lebedev =?iso-8859-1?q?lebedev=2Ev=2Esergey_=CE=C1_gmail=2Ecom?=
Ср Сен 5 11:26:27 MSD 2007


В сообщении от Wednesday 05 September 2007 09:11:47 Vladimir V. Kamarzin 
написал(а):
[skip]
>
> В общем виноват rewrite-режим в комбинации с Alias:
>
> Alias /wiki /var/www/html/addon-modules/seiroswiki
>
>    <IfModule mod_rewrite.c>
>         RewriteEngine on
>         RewriteCond %{REQUEST_FILENAME}  -d
>         RewriteRule ^(.*/[^\./]*[^/])$ $1/
>         RewriteRule ^(robots\.txt)$ robots.txt [L]
>         RewriteRule ^(favicon\.ico)$ favicon.ico [L]
>         RewriteRule ^(.*)$ wakka.php?wakka=$1 [QSA,L]
>    </IfModule>
>
> Если перенастроить A.seiroswiki.conf таким образом, чтобы не использовалось
> либо то либо другое, всё начинает работать.
>
> Кто понимает в apache2 и mod_rewrite, как лучше разрулить?

Это ночью я откопал, но чего оно так не понятно. Большое подозрение 
на %{REQUEST_FILENAME} -- это полный путь до директории, вот именно он и 
светится в логах. А вообще вот кусок strace от apache2, который обрабатывает 
мой запрос localhost/wiki

accept(3, {sa_family=AF_INET, sin_port=htons(42389), 
sin_addr=inet_addr("127.0.0.1")}, [16]) = 11
getsockname(11, {sa_family=AF_INET, sin_port=htons(80), 
sin_addr=inet_addr("127.0.0.1")}, [16]) = 0
fcntl64(11, F_GETFL)                    = 0x2 (flags O_RDWR)
fcntl64(11, F_SETFL, O_RDWR|O_NONBLOCK) = 0
read(11, "GET /wiki/ HTTP/1.1\r\nHost: local"..., 8000) = 556
gettimeofday({1188934756, 620826}, NULL) = 0
stat64("/var/www/html/addon-modules/seiroswiki/", {st_mode=S_IFDIR|0755, 
st_size=600, ...}) = 0
stat64
("/var/www/apache2/html/var/www/html/addon-modules/seiroswiki/wakka.php", 
0xbf8499ac) = -1 ENOENT (No such file or directory)
lstat64("/var", {st_mode=S_IFDIR|0755, st_size=552, ...}) = 0



Подробная информация о списке рассылки Sisyphus