2015-12-26 5 views
0

Я написал файл .htaccess, что может переписать все URL-адреса, но он не может открыть существующие файлы. Зачем? Я использую веб-сервер Apache в Mac OS X с XAMPP.htaccess rewrite работает, но не очень хорошо

DirectoryIndex index.html index.php 
Options -Indexes +FollowSymlinks 

RewriteEngine on 
RewriteBase /eight 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 

RewriteRule ^([^/]*)?$ index.php?kategoria=$1 [L] 
RewriteRule ^([^/]*)/([^/]*)?$ index.php?kategoria=$1&datum=$2 [L] 
RewriteRule ^([^/]*)/([^/]*)/([^/]*)?$ index.php?kategoria=$1&datum=$2-$3 [L] 
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)?$ index.php?kategoria=$1&datum=$2-$3-$4 [L] 
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)/([^/]*)?$ index.php?kategoria=$1&datum=$2-$3-$4&url_title=$5 [L] 

Я знаю, что "RewriteCond% {REQUEST_FILENAME}! -d" и "RewriteCond% {REQUEST_FILENAME}! -f" команды должны сделать достигнуть существовать файлов.

Благодаря вашей помогает :)

ответ

0

RewriteCond применим только к 1 RewriteRule они немедленно предшествовать, но вы, вероятно, имели в виду, чтобы проверить, прежде чем все эти RewriteRules, которые копируют путь к строке запроса.

Вам необходимо будет дублировать условия.

Смежные вопросы