Php 忽略我在拉威尔设定的路线

Php 忽略我在拉威尔设定的路线,php,laravel,Php,Laravel,如果我用Laravel写下以下内容: Route::get('/', function() { echo "here"; exit(); }); 然后导航到公共/很好 如果我写以下内容: Route::get('/a', function() { echo "a here"; exit(); }); 然后导航到public/a 它抛出Symfony\Component\HttpKernel\Exception\NotFoundHttpException 这是工作前几天,所以它

如果我用Laravel写下以下内容:

Route::get('/', function()
{
    echo "here"; exit();
});
然后导航到公共/很好

如果我写以下内容:

Route::get('/a', function()
{
    echo "a here"; exit();
});
然后导航到public/a

它抛出Symfony\Component\HttpKernel\Exception\NotFoundHttpException

这是工作前几天,所以它可能与xampp?但我很确定mod_rewrite已经启动了

htaccess文件未被触及

公共目录应该是您的webroot。Apache对.htaccess和Laravel提供的文件做了一些奇怪的事情,假设它存在于webroot目录中,而不是二级目录中

尝试配置xampp,以便vhost将/yourxampppath/laravel/public作为webroot

下面是我使用的标准vhost的一个示例。我实际上没有使用xampp,我有自己的开发服务器,但基本原理保持不变

<VirtualHost *:80>
    ServerName hostname.ollieread.com
    ServerAlias hostname.ollieread.com
    DocumentRoot /var/www/hostname.ollieread.com
    ErrorLog logs/hostname.ollieread.com-error_log
    SetEnv APPLICATION_ENV development
</VirtualHost>

我认为这是mod rewrite,刚刚测试了index.php/a,并且成功了。。那么:你能给我举个vhost的例子吗。。它属于etc中的httpd vhosts文件,对吗?好了。显然,如果这样做,您希望ServerName和ServerAlias是mylaravel.localhost,那么您只需要编辑主机文件C://Windows/drivers/etc/hosts iirc,以便mylaravel.localhost绑定到IP 127.0.0.1。谢谢,这就解决了问题。它以前是怎么工作的。meh,你是干什么的!