获取Yii 1中发生错误的主url

t98cgbkg  于 2022-11-09  发布在  其他
关注(0)|答案(2)|浏览(111)

我们已经为Yii 1实现了一个错误处理程序。我们也实现了邮件功能,当发生任何错误时,我们都会收到一封电子邮件,但问题是我们没有得到错误发生的当前URL。就像一个页面控制器/操作可以包含许多图片,图标等。所以如果有任何图片丢失,我们会得到显示404的图片URL:

$url = Yii::app()->createAbsoluteUrl(Yii::app()->request->url);

但我们无法获取当前URL,即使在$error = Yii::app()->errorHandler->error.中也无法获取
因此,我们没有得到的图像是缺席的页面。请让我知道,如果有任何方法来获得当前页面的URL,因为我已经尝试了许多方法,但他们都返回丢失的图像的URL,而不是主页的URL,其中图像丢失。

35g0bw71

35g0bw711#

createAbsoluteUrl()需要将route作为第一个参数-如果您提供URL而不是route(就像在代码片段中一样),它可能会返回随机结果。
如果您需要当前请求的绝对URL,可以使用getUrl()getHostInfo()的组合:

$url = Yii::app()->request->getHostInfo() . Yii::app()->request->getUrl();
hwazgwia

hwazgwia2#

在错误的情况下,您可以使用Yii 1中的Yii::app()->request->requestUri获取当前页面的url。

相关问题