在 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 没有安装?