我在共享托管服务器中托管了我的Zend Framework 2应用程序。我上传了根文件夹中 public_html 的所有文件。我将以下代码放在 index.php 文件中,该文件位于 public 文件夹中。
error_reporting(E_ALL);
ini_set("display_errors", 1);
现在我正在尝试浏览我的应用程序,例如 test.com/public 并收到以下错误。
Fatal error: Uncaught exception 'Zend\ModuleManager\Exception\RuntimeException' with message 'Module (test) could not be initialized.' in /home/nowphp/public_html/zend_test/vendor/zendframework/zendframework/library/Zend/ModuleManager/ModuleManager.php:175 Stack trace:
#0 /home/nowphp/public_html/zend_test/vendor/zendframework/zendframework/library/Zend/ModuleManager/ModuleManager.php(149): Zend\ModuleManager\ModuleManager->loadModuleByName(Object(Zend\ModuleManager\ModuleEvent))
#1 /home/nowphp/public_html/zend_test/vendor/zendframework/zendframework/library/Zend/ModuleManager/ModuleManager.php(90): Zend\ModuleManager\ModuleManager->loadModule('test')
#2 [internal function]: Zend\ModuleManager\ModuleManager->onLoadModules(Object(Zend\ModuleManager\ModuleEvent))
#3 /home/nowphp/public_html/zend_test/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468): call_user_func(Array, Object(Zend\ModuleManager\ModuleEvent))
#4 /home/nowphp/public_html/zend_test/vendor/zendframework/zendframework/library/Z in /home/nowphp/public_html/zend_test/vendor/zendframework/zendframework/library/Zend/ModuleManager/ModuleManager.php on line 175
我尝试了很多但未能解决问题。谁能在这方面帮助我?
由于
答案 0 :(得分:0)
您需要将公用文件夹中的所有文件添加到根目录,即public_html。然后在root后面创建一个文件夹(假设名为 zf2project 的文件夹),并将除公共文件夹以外的所有文件夹复制到其中。
然后编辑index.php文件
chdir("zf2project/".dirname(__DIR__));
顺便说一下,您是否可以提供指向您网站的链接。
答案 1 :(得分:0)
遇到这篇文章是因为我有同样的问题。
我尝试过的一件事似乎是在您的项目目录中创建从public_html
目录到public
目录的符号链接。
使用网址:example.com/~user/Application
$ cd ~/public_html
$ ln -s /path/to/project/public Application
使用网址:example.com/~user
$ cd ~
$ ln -s /path/to/project/public public_html
这假设〜/ public_html已经存在。
我不确定此方法是否会产生任何负面影响。