简介
- 我和我的团队是第一次使用 Zend Framework 2.4.2
- 我们的目标是构建一个简单的门户,其中包含授权模块和基于表或列表的内容
- 我们已经为此工作了几个星期,但还没有找到解决问题的方法
问题
一般来说,Zend在使用XAMPP Apache的本地机器上完美运行。但是,将其部署到远程服务器上时,除了重定向之外,一切正常。每当有这样的命令时
return $this->redirect()->toRoute('foo');
浏览器只显示一个空白页(尽管它在 XAMPP 上完美重定向)。
系统
- 我们将Zend Skeleton应用程序与Album Modul一起使用。我们还实现了一个授权模块,其工作原理非常相似,并以相同的方式使用重定向。
- 在本地,我们使用 XAMPP 版本 1.8.3 和 PHP 5.5.15。
- 我们在两台服务器(1&1和Strato)和不同的PHP版本(5.3,5.5,5.6)上测试了我们的应用程序。所有配置都会导致相同的行为(重定向时为空白页)。
我们排除了什么
- 可以排除区分大小写和路径相关的原因。当 Zend 找不到路径时,它会显示一条错误消息。
- 已经测试了不同的 PHP 版本,因此版本可能不是原因。我们不能对配置说同样的话。
- 可以排除服务器上的访问权限是原因。我们在这里尝试了不同的配置。
我们对重定向和服务器配置进行了大量研究,但似乎没有其他人遇到此问题。事实上,没有人谈论服务器上的问题,只是框架的一般问题。我们感谢每一个想法和想法。
我终于找到了解决方案!
我需要复制我的本地php.ini文件并将其粘贴到Zend应用程序的公共/文件夹中。服务器的行为方式是加载标准 php.ini如果没有。现在它使用 php.ini 和正确的设置。显然,Zend的重定向需要一些设置才能工作。当然,我不得不注释掉 php.ini 副本中的所有本地路径。不过,感谢您的投入!