我是新手,想了解一下Web框架的工作原理。我在Windows 10中通过Controller安装了CakePHP。我使用的是Windows IIS7服务器而不是W / XAMP。我使用了this视频和this文档。除了让Controller安装CakePHP之外我唯一手动做的就是为IIS7设置Rewrite Module 2.0并创建一个web配置文件,如描述here中所述。
现在,当我访问" http://localhost/Verzeichnis/CakePHP/my_app_name/webroot"我得到Error: WebrootController could not be found.
错误下有一个描述:Create the class WebrootController below in file: src\Controller\WebrootController.php
但我怀疑这应该是自动创建的,对吧?此外,使用此内容创建文件会带来其他错误,这使我认为我不应该被迫手动执行此操作。
composer update
确实有效,但找不到任何要更新的内容。
答案 0 :(得分:1)
Webroot确实是包含index.php的目录,它是应用程序的入口点,但您不需要将其包含在您的URL中。您设置的重写规则负责重写请求并将其指向目标。
要访问您的应用,您应该只使用指向cakephp根文件夹的网址,在您的情况下可能是http://localhost/Verzeichnis/CakePHP/my_app_name/
答案 1 :(得分:0)
这个问题的解决方案是我没有运行CakePHP的内置服务器。我以为我必须使用Windows网络服务器IIS7。但是通过运行
cake server
从项目的bin
文件夹中的命令行(在我的情况下为my_app_name
)我现在可以通过浏览器成功打开webroot
文件夹中的内容。
这是通过在浏览器中使用localhost:8765
(localhost与标准端口不同的端口)来完成的。
虽然这个解决方案有效但了解Windows ISS7网络服务器的问题仍然很有趣。