百科狗-知识改变命运!
--

laravel9 安装配置 - vue3 项目实战

是丫丫呀1年前 (2023-11-21)阅读数 21#技术干货
文章标签文件

laravel9 安装配置

在 Linux 服务器上搭建 PHP 语言的web,使用laravel 9框架+vue3前端框架。以前后端分离的方式,进行搭建配置。

运行环境:

  • centOS 9
  • nginx 1.22
  • php 8.1.9
  • mysql 8.0.30

运行环境的搭建,参阅centOS服务器搭建


安装 composer

cd /usr/local/src
curl -sS https://getcomposer.org/installer | php
mv composer.phar  /usr/local/bin/composer

测试

composer -V

此时composer已经成为全局使用的工具。


安装 laravel 9

在/var/web/www目录下安装 web 项目exampleApi。要求:PHP 版本 8.0.2+

cd /var/web/www
composer create-project laravel/laravel exampleApi

cd /var/web/www/exampleApi
chmod -R 777 storage
chmod -R 777 bootstrap/cache
chmod -R 777 database/migrations

查看 Laravel版本:

php artisan --version
cat composer.json

查看目录结构:

tree -L 2 ./


安装验证码

Validate capatcha in api middleware支持API方式图形验证码。captcha-函数列表

composer require mews/captcha

在config/app.php中添加注册引用

 'providers' => [ Mews\Captcha\CaptchaServiceProvider::class, Illuminate\Auth\AuthServiceProvider::class,
.....

'aliases' => Facade::defaultAliases()->merge([ 'Captcha' => Mews\Captcha\Facades\Captcha::class, ])->toArray(),

.....

生成配置文件,在项目根目录下,输入如下命令:

php artisan vendor:publish

选项响应的生成文件数字9,自动生成配置文件config/captcha.php。修改 default 数组可以对验证码进行样式、数量、大小上的修改。


页面中使用:

验证码: captcha_src('flat') }}" onclick="this.src='{{$web}}/captcha/flat?'+Math.random()" title="点击图片重新获取验证码" />

控制器中验证captcha::check()或者captcha_check()验证

......
use Mews\Captcha\Facades\Captcha;......


$captcha=$request->input('captcha');
if(!Captcha::check($captcha))
{
	//验证码错误
}

如果是前后端分离的项目

return response()->json([
  'src' => \captcha_src() 


配置 laravel 9

登录 mysql 创建数据库

登录 mysql 客户端
mysql -u root -p

创建数据库
create database exampleApi default character set utf8mb4 collate utf8mb4_unicode_ci;


配置 laravel 链接数据库,修改.env文件。

.env
......
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=exampleApi
DB_USERNAME=root
DB_PASSWORD=mySqlPassword
......


上传到生产环境后。需要修改配置,修改.env文件。

调试模式
......
APP_ENV=local
APP_DEBUG=true
......

生产模式
......
APP_ENV=production
APP_DEBUG=false
......


配置 laravel 链接数据库,修改config/database.php文件。

......
    'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'exampleApi'),
            'username' => env('DB_USERNAME', 'root'),
            'password' => env('DB_PASSWORD', 'mySqlPassword'),
            'unix_socket' => env('DB_SOCKET', '/usr/local/mysql/run/mysqld.sock'),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => 'db_',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
                PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
    ],
......


清除laravel默认的迁移文件

Laravel9 默认,在目录database/migrations下有四个文件:

  • 2014_10_12_000000_create_users_table.php,用来创建db_users表,用于构建用户表。
  • 2014_10_12_100000_create_password_resets_table.php,用来创建db_password_resets表,用于构建密码重置表。
  • 2019_08_19_000000_create_failed_jobs_table.php,用来创建db_failed_jobs表,用于构建任务失败表。
  • 2019_12_14_000001_create_personal_access_tokens_table.php,用来创建db_personal_access_tokens表,用于 sanctum 验证,存放用户对应的 token 相关字段信息。

laravel9 安装配置 - vue3 项目实战

若已经具备数据表,这四个文件可以清除掉。

cd /var/web/www/exampleApi

rm -rf database/migrations/*
composer dump-autoload


清除 laravel 缓存命令

使用终端命令行工具,进到 laravel 应用程序目录下。使用以下命令来清除缓存:

1、清除应用程序缓存

php artisan cache:clear

2、清除路由缓存

php artisan route:cache

3、清除配置缓存

php artisan config:cache

4、清除已编译的视图文件

php artisan view:clear

5、自动加载优化

部署应用到生产环境时,确保优化过 Composer 的类自动加载映射以便 Composer 可以快速为给定类找到要加载的文件:

composer install --optimize-autoloader --no-dev

注:除了优化自动加载器之外,还要在项目代码仓库中包含 composer.lock 文件,这样的话项目依赖可以更快安装。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)