2013-11-03 3 views
1

Я в основном разработал пользовательские рамки для себя, что запускает все из index.php, используя следующую .htaccess строкиRewriteRule базы и конкретный путь

RewriteRule .* index.php [QSA,L] 

Я теперь разработал REST API, что мне нужно запускать через один и тот же сервер/корень, я попытался добавить следующий URL-адрес в .htaccess, чтобы получить приглашение с помощью настраиваемого 404. Я подключился к своей пользовательской структуре, поэтому в основном он игнорирует эту строку и просто пытается использовать RewriteRule для моей специальной рамы

RewriteRule /api/v1/(.*)$ myAPI.php?request=$1 [QSA,NC,L] 

Как я могу получить его, так что я мой API URL не будет принят в качестве запроса к моему другому RewriteRule

Моя .htaccess выглядит следующим образом

Options +FollowSymlinks 
RewriteEngine on 
RewriteOptions MaxRedirects=10 

AddType "text/html; charset=UTF-8" html 
AddType "text/plain; charset=UTF-8" txt 

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/

    # if file not exists 
    RewriteCond %{REQUEST_FILENAME} !-f 

    # if dir not exists 
    RewriteCond %{REQUEST_FILENAME} !-d 

    # avoid 404s of missing assets in our script 
    RewriteCond %{REQUEST_URI} !^.*\.(jpe?g|png|gif|css|js)$ [NC] 

    # rest api url 
    RewriteRule ^api/v1/(.*)$ /myAPI.php?request=$1 [QSA,NC,L] 

    # core framework url rewriting 
    RewriteRule .* index.php [QSA,L] 
</IfModule> 

ответ

1

Remove слэш из вашего правила :

RewriteRule ^api/v1/(.*)$ /myAPI.php?request=$1 [QSA,NC,L] 

.htaccess находится в директиве директории и Apache вырезает текущий путь к каталогу из RewriteRule URI шаблона.

+0

он по-прежнему игнорирует ** RewriteRule **, я добавил свой .htaccess на вопрос – Curtis

+0

Можете ли вы попробовать комментировать файл, существует ли каталог и существуют ли строки и повторные проверки? – anubhava

+0

Я прокомментировал это безрезультатно – Curtis

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