Router :: url在CakePHP 3中的Shell中打印localhost

时间:2017-04-22 16:04:57

标签: cakephp url-routing cakephp-3.4

我正在使用CakePHP 3.4

我有一个shell脚本作为cron运行并向用户发送电子邮件,email包含一个返回指定控制器的网站链接。

为实现这一目标,我在Shell中使用Router::url()来生成基本网址,因为Html->link无法在那里工作

$fullBaseUrl = Router::url('/', true);
$scan_result_url = Router::url(['controller' => 'Notifications', 'action' => 'notificationRedirect', $notification->id], true);

但这是使用localhost生成url作为主机,如

http://localhost/notifications/notification-redirect/<id>

在测试时,Controller中的相同行给出了url

http://mywebsite.com/notifications/notification-redirect/<id>

如何在Shell中获取完整的URL。我的网站托管在服务器上并使用mywebsite.com来访问它?

1 个答案:

答案 0 :(得分:0)

Cron不会在您的应用程序中选择服务器URL。您需要在配置文件中设置一个常量并仅使用它。 要做蛋糕的方式,看看这个Full base url example