使用 Laravel/Lumen 5.2 和 apache 2.4
Posted
技术标签:
【中文标题】使用 Laravel/Lumen 5.2 和 apache 2.4【英文标题】:Using Laravel/Lumen 5.2 with apache 2.4 【发布时间】:2016-09-21 22:26:09 【问题描述】:环境详情:
Windows 10 php7 Apache 2.4。我采取的行动
我使用以下方法将 Lumen 安装到 htdocs 文件夹中:
composer create-project --prefer-dist laravel/lumen blog
所以现在 index.php 的文件路径是:
c:\Apache24\htdocs\blog\public\
这是我的 routes.php 的内容:
$app->get('/', function () use ($app)
return $app->version();
);
$app->get( 'foo', function()
return "Hello World!";
);
首先我什至无法访问http://localhost/blog/public,所以我将public/index.php代码中的$app->run();
行更改为$app->run($app->make('request'));
问题:
现在我无法访问http://localhost/blog/public/foo(响应为 404)
编辑
根据 Alexei 的建议,我更改了配置文件,现在 http://localhost 指向 '/' 路由,但我仍然无法访问 http://localhost/foo
感谢帮助;)
【问题讨论】:
【参考方案1】:不要对 Laravel 文件进行任何更改。你应该 point Apache to a public
directory 的 Laravel 项目并重新启动它。之后使用像http://localhost
这样的普通网址。
在 Apache 配置中进行这些更改:
DocumentRoot "c:\Apache24\htdocs\blog\public\"
<Directory "c:\Apache24\htdocs\blog\public\">
【讨论】:
您好,感谢您的建议,我更改了配置文件,现在 localhost 指向 '/' 路由,但我仍然无法访问 localhost/foo 我的建议是 +1 :)【参考方案2】:在 Apache 中 - httpd.conf:
对于指定的目录,将AllowOverride
从 None 更改为 All
取消注释行LoadModule rewrite_module modules/mod_rewrite.so
【讨论】:
以上是关于使用 Laravel/Lumen 5.2 和 apache 2.4的主要内容,如果未能解决你的问题,请参考以下文章
Laravel/Lumen - 使用 Model::with()
在 laravel/lumen 中使用客户端 ID 和密钥访问 API