【发布时间】:2014-06-19 21:39:42
【问题描述】:
我不知道如何让 CakePHP 在我本地机器上的虚拟主机中运行。我可以让代码在默认的http://localhost:8888/caketest/ 上工作,但不能从收到警告的http://cakeapp.local:8888/ 上工作
"URL rewriting is not properly configured on your server. 1) Help me configure it 2) I don't / can't use URL rewriting"
在我添加的 MAMP 的 httpd.conf 中
<VirtualHost *>
DocumentRoot "/Applications/MAMP/htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *>
DocumentRoot "/Users/me/Documents/path/to/root/root"
ServerName cakeapp.local
</VirtualHost>
我在帮助页面中看到了它所期望的
Options FollowSymLinks
AllowOverride All
# Order deny,allow
# Deny from all
但是这个 MAMP 崩溃了
两者都是 CakePHP 2.4.9,默认下载没有变化
编辑:/Users/me/Documents/path/to/root/root 中不起作用的不工作文件被复制到 /Applications/MAMP/htdocs 然后它们在那里工作,所以这是虚拟主机的问题
编辑 2: 我以为我找到了解决方案,但看起来我错了。我将虚拟主机更改为直接指向 /app/webroot 已正确显示默认页面,然后我继续添加 DebugKit 插件(我在不同的本地主机文件中工作,并且对其文件的重写仍然不起作用.
例如 app/Plugin/DebugKit/webroot/css/debug_toolbar.css 在 http://localhost:8888/caketest/debug_kit/css/debug_toolbar.css 上加载,但虚拟主机 http://cakeapp.local:8888/debug_kit/css/debug_toolbar.css 中的文件返回 404 错误(插件有效),文件只是没有加载.
【问题讨论】:
-
检查
LoadModule mod_rewrite是否在Apache的httpd.conf中启用 -
@dbrumann 它是,它可以在本地主机中工作,但不能在虚拟主机中工作(但是它确实可以访问 app/webroot 中的 index.php,所以我不确定我在哪里可以进行更改以使其正常工作
标签: php apache cakephp mamp virtualhost