Как настроить .htaccess для разделения внешнего интерфейса и внутреннего интерфейса - PullRequest
0 голосов
/ 10 июля 2019

Я создаю веб-приложение и API-интерфейс.Они оба находятся в одной папке.

Вот как это будет выглядеть:

- /root
 - /app
     - index.html
     - main.js
     - ...
 - /api
     - /public
     - ...
 - .htaccess

Оба будут размещаться в одном домене, поэтому мне нужно переписать URL с помощью Apacheчтобы следовать этим правилам:

http://domain/api/$1 следует переписать в /root/api/public/$1

и http://domain/xxxx в /root/app/index.html

Я уже пробовал со следующей конфигурацией:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    RewriteCond %{REQUEST_URI} ^/$
    RewriteRule !^/ /app/index.html [L]

    RewriteCond %{REQUEST_URI} ^/api/(.*)$
    RewriteRule ^api/(.*)$ /api/public/%{REQUEST_URI} [L]
</IfModule>

Это не сработает, и я не уверен, как это правильно сделать.Есть некоторые ошибки: когда я пытаюсь перейти на http://domain/api, меня перенаправляют на http://domain/api/public/api.http://domain/api/anything работает нормально, но http://domain/anything нет.Только http://domain отправляет файл index.html.

Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...