Php 将CodeIgniter配置为在Mac OS X上与Apache一起本地运行

Php 将CodeIgniter配置为在Mac OS X上与Apache一起本地运行,php,apache,codeigniter,localhost,Php,Apache,Codeigniter,Localhost,我有一个CodeIgniter项目,到目前为止,它只能远程运行(它是在服务器上构建的……不是我的主意!)。我把它从GitHub拉到了我的本地机器上(运行OSX10.6,在那里我安装并配置了MySQL和PHP) 当我进入主页时(http://localhost)它工作得很好(连接到DB,运行所有PHP,为我提供正确的页面)。。。但是,当我单击任何链接(例如,指向的产品上的链接)时,我会立即看到一个空白页或“未找到请求的URL/product/details/464未在此服务器上找到” 就好像在我的

我有一个CodeIgniter项目,到目前为止,它只能远程运行(它是在服务器上构建的……不是我的主意!)。我把它从GitHub拉到了我的本地机器上(运行OSX10.6,在那里我安装并配置了MySQL和PHP)

当我进入主页时(http://localhost)它工作得很好(连接到DB,运行所有PHP,为我提供正确的页面)。。。但是,当我单击任何链接(例如,指向的产品上的链接)时,我会立即看到一个空白页或“未找到请求的URL/product/details/464未在此服务器上找到”


就好像在我的堆栈中,Apache、PHP或CodeIgniter的某个地方丢了球,没有意识到它应该解释这个URL并将其定向到适当的控制器,等等,而是试图将其作为一个静态文件提供。我可能在这里遗漏了一些明显的东西,但我已经尝试了几个小时的故障排除,但没有运气。任何帮助都将不胜感激

您是否在config.php文件中设置了基本url和索引页面?如果您的Apache没有运行mod_rewrite,您需要启用mod_write并确保您有.htaccess文件,或者将您的index_页面设置为“index.php”,以便CodeIgniter在没有mod_rewrite的情况下工作

$config['base_url']     = 'http://yourlocalurl/';
$config['index_page'] = 'index.php';

.htaccess是您的问题,它没有正确重定向

在Mac中默认安装Apache/PHP是很奇怪的。我遇到了CodeIgniter和Apache无法识别.htaccess文件的问题。使用MAMP[http://www.mamp.info/en/index.html]与托管环境相比更稳定、更具可比性

Mac设置:

$config['base_url']     = 'http://localhost:8000';
$config['index_page'] = 'index.php';
终端:
php-S本地主机:8000

如果不起作用,请确保apache正在运行…
终端:
sudo apachectl start


然后再次运行:
php-S localhost:8000

我从来没有真正地愚弄过CodeIgniter,所以我不会回答。但是,框架是否使用任何
.htaccess
文件重定向到前端控制器?如果是这样的话,当你把它拉到本地机器上时,它们是否在你的github回购协议中?这行吗?.htaccess文件在git repo中,是否有其他全局.htaccess文件可能会把它弄糟?我将尝试使用下面GregSchoen建议的MAMP,然后再报告。谢谢你的MAMP提示Greg!我无缘无故地浪费了很多时间在我的Mac上安装MySQL,但现在幸运的是,MAMP的一切都正常工作!