从 MAMP 开发环境到 XAMPP
Posted
技术标签:
【中文标题】从 MAMP 开发环境到 XAMPP【英文标题】:From a MAMP dev env to XAMPP 【发布时间】:2011-06-09 17:54:43 【问题描述】:我正在接管最初在 OSX 上使用 MAMP 开发的 codeigniter 项目。
我的 php 开发环境是 Windows 上的 XAMPP。非常适合我的所有其他工作和项目。但是,我将这个应用程序复制到了我的 htdocs 文件夹中,它可以工作,但它会导致重写 URL 时出现很多问题(例如,ModRewrite 无法正常工作,请参阅ModRewrite not working for codeigniter site)。
这些问题是否源于两个开发环境?在我的主机上运行良好,但我需要进行更改。
编辑:在 MAMP 环境中恢复,同样的问题。现在查看配置。
【问题讨论】:
你在两个环境中使用相同的配置(路径除外)吗? 我真的不这么认为:(虽然我知道路径不同 @drpcken:那就先试试吧。尝试使用相同的配置(好吧,除了提到的路径)。 我只得到 httpd.conf 文件吗?我还需要哪些其他配置文件? 您应该更多地关注您正在从 OSX 环境迁移到 Windows 环境这一事实,我认为这是导致您大部分问题的原因,而不是 XAMPP 和 MAMP 之间的差异。 【参考方案1】:1 检查站点路径如何,例如。它是 locahost/~user/ci 并且是 localhost/ci
2 if is different 更改 config.php 和 .htaccess
3 确保 htaccess 可以正常工作。检查模块是否存在并检查是否允许 httpd.conf 上的 .htaccess
看看 Mamp 和 Xampp 有什么不同。
【讨论】:
【参考方案2】:好的,CodeIgniter 特定环境配置问题...
system/application/config/config.php
system/application/config/database.php
./index.php
要检查的是 config.php 中的“base_url”
同样在此注释中,请确保在代码中之前的作者始终使用<?= base_url() ?>
来加载资产(css、img 等)和其他依赖于路径的东西。
包含 css 文件的示例 url <= base_url() ?>css/cssfile.css
将创建 url http://your.local.host/css/cssfile.css
而<?= site_url('controller/function') ?>
将创建http://your.local.host/index.php/controller/function
确保他们使用<?= site_url('uri/path') ?>
作为href 的锚标记。
【讨论】:
这里是 base_url :$config['base_url'] = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 's' : '').'://'.$_SERVER['HTTP_HOST'].str_replace('//','/',dirname($_SERVER['PHP_SELF']).'/');
好的,我会废弃它并用您为本地开发人员设置的任何虚拟主机替换它,例如。 $config['base_url'] = 'http://dev.local';
其中 dev.local 是您设置的站点根目录。
就是这样,谢谢!我的初始页面有效,但链接无效,因为它要求我输入 base_url/index.php/products
好的,请务必查看文档,尤其是链接,请确保您重新阅读我的原始答案,特别是关于 base_url()
和 site_url()
他们使用 base_url 的链接很好,这很奇怪,因为它似乎在渲染时生成了 index.php。以下是 标签的示例:<a href="<?=base_url()?>products/id/12">Link</a>
。这产生了网址localhost/Site/products/id/12。直到我在 Site/ 段之后键入 index.php
后,此链接才会起作用。这就是我要删除的内容以上是关于从 MAMP 开发环境到 XAMPP的主要内容,如果未能解决你的问题,请参考以下文章