2017-04-22 5 views
1

私はcronのように実行し、ユーザーに電子メールを送信するためのシェルスクリプトを持っているのCakePHP 3.4シェルでルーター:: URLの印刷はlocalhost

に取り組んでいる、電子メールが戻ってウェブサイトへのリンクが含まれています指定されたコントローラ。これを実現するために

、私はそこに

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

が機能していない。しかし、これは

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

のようなホストにlocalhostとURLを生成しているHtml->link becuaseベースURLを生成するために、シェルのRouter::url()を使用していますコントローラの同じ行がテスト時にURLを与える

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

シェルで完全なURLを取得するにはどうすればよいですか。私のウェブサイトはサーバー上でホストされており、mywebsite.comを使ってアクセスしていますか?

+0

を見て**のhttp://stackoverflow.com/questions/38785795/full-urls-in-emails-in-cakephp-unittest** – ndm

答えて

0

CronはアプリケーションでサーバーURLを選択しません。設定ファイルに定数を設定し、それを使用する必要があります。それをケーキの方法を行うには 、このFull base url example

+0

リンク質問CakePHP 3については動作しません。 – ndm

+0

はい、私はそのリンクを試しましたが、2.0用です –

関連する問題