define('ROUTE_BASE', 'lumen/public');
$app->get(ROUTE_BASE . '/', function () use ($app) {
return $app->welcome();
});
$app->get(ROUTE_BASE . '/test', function () use ($app) {
return 'test data : 123 abc !';
});
当我访问' localhost / lumen / public /' 时,我可以看到' lumen欢迎页面'。
但如果我尝试访问' localhost / lumen / public / test' ,我会收到以下错误。
错误:未找到(404)。
答案 0 :(得分:1)
Laravel希望公共目录成为您域名的webroot。由于您的情况并非如此,您需要对.htaccess
进行一些更改。
Options +FollowSymLinks
RewriteEngine On
RewriteBase /lumen/public
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
另外值得注意的是,您可以使用路由组在routes.php中实现相同的功能,而不是使用常量。
$app->group(['prefix' => 'lumen/public'], function ($app) {
$app->get('/', function () {
//welcome
});
$app->get('test', function () {
return 'test data : 123 abc !';
});
});
答案 1 :(得分:0)
您的流明项目必须放在 localhost ,域或虚拟主机的webroot中,而不是在您的webroot的子文件夹中,而无需编辑您的。 htaccess的。 用于在浏览器中访问您的项目: http://lumen.laravel.dev 而非 http://lumen.laravel.dev/public/
我希望这有帮助。对不起我的英文:)