在 WAMP 服务器上配置 Laravel 路由

Posted

技术标签:

【中文标题】在 WAMP 服务器上配置 Laravel 路由【英文标题】:Configure Laravel routing on a WAMP Server 【发布时间】:2018-03-25 00:16:45 【问题描述】:

我正在学习 Laravel 框架,但是我在路由中遇到了一个奇怪的问题。例如,当我访问 localhost/iMall 时,它只会显示文件和文件夹列表,我应该明确访问 localhost/iMall/public 并且当我访问 localhost/public/index.php 它将到达 localhost/index.php 显示 WAMP 服务器的索引页面。添加任何路线都不起作用,例如: 在 app/http/routes.php 我写了这个:

<?php
Route::get('/', function () 
    return view('welcome');
);

Route::get('hi', function () 
    return view('Hi'); // Hi.blade.php
);

但这不起作用,mod_rewrite 已启用并且 AllowOverride 设置为 all。我正在使用 WAMP 3.0.4 有什么帮助吗?

【问题讨论】:

你使用什么版本的 Laravel? @Webdesigner 完全正确:5.4.36,但是我会尝试你的答案,希望它有效。还是谢谢你 哇!不,我正在学习教程,也许我错过了他们使用的版本。我会试试的 谢谢,这成功了!但是当我访问 iMall/hi 时它仍然没有显示任何内容我应该访问 iMall/public/hi 以达到 hi 视图! 它在 WAMPServer 上的事实与这里无关 【参考方案1】:

在 laravel 5.4 中,你应该把你的路由放在 /routes/web.php 而不是 /app/http/routes.php

您还应该更改 WAMP 服务器上的虚拟主机配置。

Laravel 期望你的 Document Root 是 /public,所以如果你输入 localhost 应该指向 /path/to/laravel_project/public

现在 WAMP 中的默认设置是他向您显示 WAMP index.php。

现在您可以在主机文件中添加一个新域。C:\Windows\System32\drivers\etc\hosts 并在末尾添加流线:127.0.0.1 laravel.dev

现在你必须添加一个new Virtual Host on your WAMP Server:

<VirtualHost *:80>
    ServerName laravel.dev
    DocumentRoot "C:/wamp64/www/laravel_project/public"

    <Directory "C:/wamp64/www/laravel_project/public/">
        DirectoryIndex index.php
        Options -Indexes +FollowSymLinks
        Require all granted
        AllowOverride All
    </Directory>
</VirtualHost>

然后重启你的 WAMP 服务器

现在,如果您输入 laravel.dev,它应该会显示您的 Laravel 项目的 / 路由。

【讨论】:

以上是关于在 WAMP 服务器上配置 Laravel 路由的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 wamp 上更新 php 7.1.3 后 laravel 5.6 没有安装?

使用 Laravel 和 ajax 的内部服务器错误

Laravel 在 wamp 上

路由错误或 wamp 错误?

我如何使用Wamp运行laravel / vue Web应用程序?

PhpStorm 内置服务器:找不到类“路由”(Laravel)