Похоже, переопределение вашего URL-адреса не работает. Если вы добавите index.php
к URL-адресу прямо перед /api
, это сработает?
Например, yourdomain.com/api
станет yourdomain.com/index.php/api
, и если второй URL работает, перезапись не работает.
Если ваша перезапись не работает, но у вас есть файл .htaccess
в вашем public
каталоге, вам, вероятно, необходимо разрешить переопределения в вашей конфигурации Apache. Вот пример конфигурации виртуального хоста для Lumen в Ubuntu.
Я пометил линии, которые нужно изменить. Измените первый и третий так, чтобы они указывали на каталог public
в каталоге вашего веб-сайта. Затем измените вторую строку на доменное имя, которое вы используете на своем веб-сайте.
<VirtualHost *:80>
DocumentRoot "/var/www/lumen/public" # Change this line
ServerName yourdomain.com # Change this line
<Directory "/var/www/lumen/public"> # Change this line
AllowOverride All # This line enables .htaccess files
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Вам необходимо перезапустить Apache, чтобы эти настройки вступили в силу.
Лучший способ
Включение файла .htaccess
должно работать, но использование .htaccess
несколько замедляет работу вашего сайта. Лучшее решение - поместить содержимое файла .htaccess
на виртуальный хост, а затем отключить файлы .htaccess
.
Пример конфигурации виртуального хоста для этого выглядит следующим образом:
<VirtualHost *:80>
DocumentRoot "/var/www/lumen/public" # Change this line
ServerName yourdomain.com # Change this line
<Directory "/var/www/lumen/public"> # Change this line
# Ignore the .htaccess file in this directory
AllowOverride None
# Make pretty URLs
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
</Directory>
</VirtualHost>
Еще раз, вам необходимо перезапустить Apache, чтобы эти настройки вступили в силу.
person
BrokenBinary
schedule
29.08.2015
/index.php/api
работает? Если это так, значит, переопределение URL-адреса не работает. - person BrokenBinary   schedule 29.08.2015