Я написал простой API отдыха несколько недель назад, этот API хорошо работает на моем веб-сервере (bitnami - localhost), а также на моем платном хостинге. Теперь я установил веб-сервер с малиной, я новичок в Linux и купил малину для изучения. В любом случае, веб-сервер работает отлично, но когда я загрузил свой API для отдыха, я получил:

The request Url /project/api/v1/user/getUsers was not found on this server
Apache/2.4.10 (Raspbian) Server at webserver Port 80

таким образом я выполняю запрос:

http://webserver/project/api/v1/user/getUsers

теперь этот API избегает запроса от index.php, который загружает корректно php-файл маршрутизатором, в данном случае user.php -> getUsers (function)

эта роль доступна в .htaccess с этим содержимым:

RewriteEngine On

#basic roles

RewriteBase /api/v1/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

#Shunk request on index.php 

RewriteRule ^(.+)$ index.php?uri=$1 [QSA,L]

Теперь я думаю, что у моего веб-сервера есть проблема с этим .htaccess, потому что, если я наберу этот URL:

http://webserver/project/api/v1/

Я правильно вижу ответ index.php:

неверный запрос

из моего собственного отдыха API

есть идеи по этому поводу? Благодарю.

Обновить

кажется, что .htaccess прочитан правильно, но не может найти страницу index.php, странно.

1 ответ1

0

Во-первых, содержимое RewriteBase должно быть:

RewriteBase /project/api/v1/

Я бы также посоветовал вам проверить текущие настройки DocumentRoot, чтобы увидеть, указывает ли он на вашу папку www.

Далее вы можете проверить ссылку ниже как ссылку:http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .