问题描述
我的Laravel应用程序中只有一个页面,通常只返回一个空白页面。
它只是一个普通的刀片,像这样在控制器中使用:
public function changeusername()
{
$title = trans('menu.change_email');
$sub_title = trans('menu.change_email');
$base = trans('menu.change_email');
$method = trans('menu.change_email');
return view('app.admin.users.changeusername',compact('title','sub_title','base','method'));
}
我知道在控制器中使用trans毫无意义(尤其是不复制相同值的时间),但是我还不想重构。
在控制台中,我发现此错误:
未声明HTML文档的字符编码。的 在某些浏览器配置中,文档将显示乱码 如果文档包含来自US-ASCII范围之外的字符。 页面的字符编码必须在文档中声明,或者 在传输协议中。
检查源代码时,其为空。好像没有返回HTML。
当我在第一次加载后快速按F5键时,源代码包含HTML,一切似乎正常。
我在Chrome中遇到相同的行为。有时源代码为空,并且控制台中没有警告。加载失败后快速按F5键时,将显示该页面。我还清除了视图缓存view:clear
。
似乎该页面仅在连续加载后才显示。我在4种不同的环境下针对此页面测试了此问题-如此处所述,它在1个失败,在第二个上返回500错误,并且可以在我的笔记本电脑和另一台服务器上使用。不知道为什么。
有什么想法会导致它吗?
我还注意到,当页面加载时,源代码以空格开头:
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if IE 9]> <html class="no-js ie9" lang="en"> <![endif]-->
<!--[if gt IE 9]> <![endif]-->
<html class="no-js" lang="en" itemscope itemtype="http://schema.org/website"> <!--<![endif]-->
<head>
<meta charset="utf-8">
但是,在没有失败的那两台机器上,没有空格:
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)