安装Laravel
- 直接可以敲指令,进入到wamp->www目录下
- 创建一个项目名为"project"的Laravel项目
composer create-project --prefer-dist laravel/laravel projectcomposer create-project --prefer-dist laravel/laravel project
1.虚拟主机域名绑定和端口修改
虚拟主机域名绑定
给项目配置的虚拟主机域名是 roast.com
- 打开rewrite模块:打开 apache 的 conf 文件夹,找到httpd.conf配置文件,在该文件中找到
LoadModule rewrite_module modules/mod_rewrite.so
,去掉它前面的#(即打开注释)。 - 找到
Include conf/extra/httpd-vhosts.conf
,打开注释。表示导入(也就是开启)虚拟主机的配置,虚拟主机的配置文件是conf/extra/httpd-vhosts.conf这文件。(1,2步可能不需要自己修改,看自己的配置来) - 编辑文件:
C:\Windows\System32\drivers\etc\hosts
,新增一行:127.0.0.1 roast.com
。- 编辑文件:
\wamp\bin\apache\conf\extra\httpd-vhosts.conf
,新增一段
- 编辑文件:
<VirtualHost *:80>
ServerName roast.com
ServerAlias roast.com
DocumentRoot "${INSTALL_DIR}/www/project/public"
<Directory "${INSTALL_DIR}/www/project/public">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
详情解释:
//VirtualHost里面写的是hosts文件里面配置的域名
<VirtualHost *:80>
//ServerAdmin设置了在所有返回给客户端的错误信息中包含的管理员邮件地址
ServerAdmin roast.com
//DocumentRoot是指你项目所在的文件夹
DocumentRoot "D:\wamp64\www\project"
//ServerName是指自己配置的域名地址
ServerName roast.com
//错误日志存放位置
ErrorLog "logs/roast.com-error.log"
CustomLog "logs/roast.com-access.log" common
//Directory和项目的文件地址一样
<Directory "D:\wamp64\www\project">
//Indexes 的作用就是当该目录下没有 index.html 文件时,就显示目录结构,去掉 Indexes,Apache 就不会显示该目录的列表了。要禁止 Apache 显示目录结构列表,只需将 Option 中的 Indexes 去掉即可。
//MultiViews 使用"MultiViews "搜索,即服务器执行一个隐含的文件名模式匹配,并在其结果中选择。
//设置后,在地址栏内输入index.php 可以显示页面。在地址栏内输入index同样可以显示index.php页面
//【备注:在Indexes前,加 + 代表允许目录浏览;加 – 代表禁止目录浏览。】
Options -Indexes FollowSymLinks MultiViews
//设置访问目录默认页面为index.php
DirectoryIndex index.html index.php
//是否允许覆盖,由于要使用框架的话就要开启rewrite,设置了允许覆盖
AllowOverride all
//允许所有
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
- 重启Apache服务器
端口修改
在写完虚拟主机域名之后:
5. 打开Apache目录下的conf,找到httpd.conf文件搜索 Listen
>修改Listen 0.0.0.0:80 为 Listen 0.0.0.0:8081
-
修改端口(如我修改端口为8081)
\wamp\bin\apache\conf\extra\httpd-vhosts.conf
里将<VirtualHost *:80>改成<VirtualHost *:8081>
-
修改访问地址
访问roast.com:8081
2.创建数据库
修改.env文件
修改DB_DATABASE为自己的数据库,在phpmyadmin里面新建一个相同名字的数据库,wamp默认的数据为
DB_USERNAME=root
DB_PASSWORD=
创建新的数据表
创建数据表迁移
php artisan make:migration create_users_table
创建新字段
在database/migrations
里面的这个操作在 Schema::ceate
方法的第二个参数的闭包函数中完成
运行迁移
php artisan migrate
错误提示
laravel运行带有group by的sql时提示
“SQLSTATE[42000]”
解决办法:
项目/app/Providers/AppServiceProvider.php
中的 Schema::defaultStringLength
方法来配置它:
use Illuminate\Support\Facades\Schema;
/**
* 引导任何应用程序服务。
*
* @return void
*/
public function boot()
{
Schema::defaultStringLength(191);
}
问题解决。这事是因为laravel在5.3之后的版本默认设置strict 的值为true。