Mod_rewrite головная боль - PullRequest
       4

Mod_rewrite головная боль

0 голосов
/ 10 октября 2011

Хорошо, я просто пытаюсь настроить простое правило перезаписи для сайта.Во-первых, в httpd.conf у меня есть

LoadModule rewrite_module modules/mod_rewrite.so

Затем в отдельном файле у меня есть эта настройка псевдонима

Alias /vworker/ "f:/vWorker/" 

<Directory "f:/vWorker/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
</Directory>

Хорошо, теперь каталог сайта

f:/vWorker/urlmask

Там у меня есть файл .htaccess, который говорит следующее:

RewriteEngine on
RewriteRule ^redirect/([0-9]+)/?$ index.php?redirect=$1 [L]

Теперь, что я хочу, так это то, что если я перейду на URL http://localhost/vworker/urlmask/redirect/3161513, он на самом деле вызовет http://localhost/vworker/urlmask/index.php?redirect?3161513

С моей точки зрения все, кажется, настроено правильно, и если я добавляю тарабарщину в свой файл .htaccess, я получаю ошибку сервера, поэтому я знаю, что она читает.

В итоге получается страница с надписью «Not Found. Запрошенный URL / vworker / urlmask / redirect / 94173336828903446 не найден на этом сервере».Есть идеи, что я делаю не так?

1 Ответ

0 голосов
/ 10 октября 2011

В общем, когда у вас есть Alias, вам понадобится RewriteBase, чтобы все заработало как положено.

В вашем случае вы должны иметь

RewriteBase /vworker/urlmask/

в том же .htaccess, что и ваши правила.

...