Я работаю над приложением Apigility, пока все хорошо. Он отлично работает с http, чтобы служить API для веб-интерфейса.
Теперь я пытаюсь реализовать запланированные операции cron через консольную маршрутизацию. Но что бы я ни пытался, я не могу заставить его работать ...
Сначала я просто добавил это в конфигурацию моего модуля:
'console' => [
'router' => [
'routes' => [
'test_route' => [
'options' => [
'route' => '/test',
'defaults' => [
'controller' => 'mymodule\V1\Console\Test\Controller',
'action' => 'test'
],
],
],
],
],
],
Затем пытаюсь позвонить с:
php ./public/index.php /test
Результатом было «Базовый путь не предоставлен». Поэтому я добавил это в конфигурацию моего модуля:
'view_manager' => [
'base_path' => __DIR__ . '/../',
]
Теперь, что бы я ни пытался, я всегда получаю 404 «Запрошенный URL не может быть сопоставлен путем маршрутизации». Я нашел в Интернете примеры запуска команд типа «zf foo bar» для запуска приложения Zend в качестве командной строки, но у меня нет этой команды в моей системе (Windows 8.1). Должен ли я установить это?
Я использую composer, и я пытался установить различные пакеты, такие как zfcampus / zf-console или zendframework / zend-console, но без каких-либо заметных изменений ...
Я новичок в Apigility, но и в Zend ... Итак, моя главная проблема, я полагаю, заключается в том, что я понятия не имею, происходит ли моя проблема с одной или другой ...
Как и в каком-то другом месте, я получил ответ, что моя маршрутизация была неправильной без реальной информации о том, почему и как она была неправильной, я добавлю сюда несколько других примеров, которые я пробовал, некоторые из доступных документов.
Я пробую другой пример:
module.config.php
'console' =>[
'router' => [
'routes' => [
'console.foo' => [
'options' => [
'route' => 'delete user <userEmail>',
'defaults' => [
'controller' => 'Application\Controller\Index',
'action' => 'password'
],
],
],
],
],
],
тогда я звоню:
php ./public/index.php delete user ti@ad.com
Я все еще получаю ту же ошибку "URL не может быть сопоставлен путем маршрутизации" ....
Прямо сейчас я пытаюсь развернуть приложение на сервере Linux, я думаю, может быть, оно связано с моей машиной Windows?
Я также пробовал эти маршруты:
'console' =>[
'router' => [
'routes' => [
'console.foo' => [
'options' => [
'route' => 'delete user <userEmail>',
'defaults' => [
'controller' => 'Application\Controller\Index',
'action' => 'password'
],
],
],
'console.foo2' => [
'options' => [
'route' => 'test',
'defaults' => [
'controller' => 'Application\Controller\Index',
'action' => 'password'
],
],
],
'console.foo3' => [
'options' => [
'defaults' => [
'controller' => 'Application\Controller\Index',
'action' => 'password'
],
],
],
'console.foo4' => [
'route' => 'test',
],
'console.foo5' => [
],
'console.foo6' => [
'type' => 'catchall'
],
],
],
],
И я попробовал, конечно, другую связанную команду, с параметрами, без ...
php ./public/index.php test
php ./public/index.php
php ./public/index.php delete user test@dom.aine
Независимо от того, что я делаю, я всегда получаю один и тот же ответ "URL не соответствует ни одному маршруту" .... И, очевидно, не имеет отношения к моей машине, то же самое на моем сервере Linux
Просто чтобы подчеркнуть одну вещь, я действительно отображаю 404 в консоли (отображается ответ HTML-кода). Может быть, он не обнаруживает, что работает в консоли ??