Форум ApacheDev

Apache isn't the fastest or maximally customizable web server, its popularity comes from the fact that it provides a very good balance of these things bundled with maximum portability and reliability.

Вы не зашли.

#1 2008-02-21 14:03:35

Exorcist
Новичок
Зарегистрирован: 2008-02-21
Сообщений: 2
Рейтинг :   

Проблема в Apach2

Код:

Options +FollowSymLinks -Indexes
AddDefaultCharset utf-8   
<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteRule ^manager/([a-zA-Z0-9-_]/)*$ - [L,NC]

    RewriteRule ^download/([0-9abcdef]{32})/?$ /inc/download.php?md5=$1 [L,NC]

    RewriteCond %{REQUEST_URI} !^/manager/
    RewriteCond %{REQUEST_URI} !^/inc/download.
    RewriteRule ^((([a-zA-Z0-9-_]+)*(/[a-zA-Z0-9-_]+)*)/?)$ /index.php?page=$2/ [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^/?(.*)$ /index.php?error=$1 [L]
</IfModule>
AddHandler application/x-httpd-php5 .php

Вот это перестало работать (Internal Server Error) при изменении Apach 2.2.4 на Apach 1.3.37
Какие идеи?

Отредактированно Exorcist (2008-02-21 14:16:24)

Неактивен

 

#2 2008-02-23 05:10:36

Exorcist
Новичок
Зарегистрирован: 2008-02-21
Сообщений: 2
Рейтинг :   

Re: Проблема в Apach2

Для тех, кто когда небудь столкнется с этой ошибкой: При анализе регулярного выражения mod_rewrite в Apach 1.3. (наверно и более ранние версии) при написании множества '[a-zA-Z0-9-_]' символ '-' (минус) нужно экранировать, то есть должно быть так '[a-zA-Z0-9\-_]'. Кстати, в Apach2 да и в регулярных выражениях языков программирование в такой ситуации экранировать не обязательно.

Неактивен

 

Board footer

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson