Laravel虚拟域名绑定和数据库建立
创建一个项目名为"api"的Laravel项目
composer create-project --prefer-dist laravel/laravel api
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,新增一段
代码具体解释:
重启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 方法来配置它:
问题解决。这事是因为laravel在5.3之后的版本默认设置strict 的值为true。
安装Laravel
直接可以敲指令,进入到相应目录下创建一个项目名为"api"的Laravel项目
composer create-project --prefer-dist laravel/laravel api
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/api/public" <Directory "${INSTALL_DIR}/www/api/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。
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/6771/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取