1.1.简介
Laravel是一款简洁、优雅的基于面向对象和MVC软件设计模式的php web开发框架.
优点:
- 具有简洁易于理解的语法
- 安全机制齐全,防止sql注入,防usrf表现优秀
- 具有路由功能提高网址安全性,有利于url地址的优化
- 具有中间件控制网址访问和日志记录,过滤非法请求
- 提供大量开源库
缺点:
- 源代码复杂,新手上手难度较高
- 提供强大的开放功能同时也牺牲了部分效率
Laravel框架广告语:
为WEB艺术家创造的php框架
目前大部分框架的公共特点:
- 单入口,所有的请求必须从单入口开始,主要便于管理(统一的参数过滤)
- MVC思想(分层思想,主要为了协同开发,实现后期的维护方便)
- ORM操作数据库(关联模型):AR模式
注意:Laravel框架所有的url访问都必须事先定义好路由规则.
1.2.开发环境配置与要求
Laravel框架的运行对环境有严格的要求.
php.ini配置文件需要开启的扩展:
extension=php_openssl.dll
extension=php_pdo_mysql.dll
extension=php_mbstring.dll
extension=php_fileinfo.dll(验证码代码依赖需要该扩展)
extension=php_curl.dll(主要用于请求的发送)
httpd.conf配置文件需要开启的模块:
LoadModule deflate_module modules/mod_deflate.so
LoadModule rewrite_module modules/mod_rewrite.so
1.3.PHP的注意事项(重要)
- 在php安装好后将php.exe的位置添加到环境变量里面去(如果以前添加过其他版本要删除掉)
- 在确保添加环境变量后,通过php -v 运行得到php版号与实际运行版号一致
1.4.composer介绍
1.4.1.什么是composer?
composer是php管理依赖关系的工具,可以通过composer.json文件声明需要依赖的文件,composer就会帮你安装这些依赖库文件.
composer是一个工具,是为php项目准备的软件管家。
工作原理:
下载地址:链接
1.4.2.composer安装
注意:
安装前开启php中openssl扩展.
安装composer需要明确php.exe文件路径.
安装composer需要联网
安装完成后在cmd中 输入”composer”查看是否安装成功
注意:如果确认已经安装好composer,但是在cmd中运行composer命令的时候没有出现上述的界面,
则可能是在安装过程中,软件自行设置环境变量失败导致的。此时需要自己添加环境变量.
1.4.3.composer部署
第一步:切换镜像建议为国内镜像:(修改composer的全局配置文件)
全局配置
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
取消配置
composer config -g --unset repos.packagist
1.4.4.遇到问题?
- 建议升级最新版composer: composer self-update
- 执行诊断命令: composer diagnose
- 清除缓存: composer clear
- 如果项目安装其它源文件,则需要更新composer.lock文件命令: composer update —lock
1.5.Laravel安装
如果需要安装指定版本复制一号代码
最新版二号代码
命令含义:composer create-project --prefer-dist laravel/laravel=8.* blong composer create-project --prefer-dist laravel/laravel blog
其中:
blong意味在当前下创建blong文件夹。并将项目下载至其中。如有特殊需求可以自定义存储路径
laravel/laravel=8.* 意味下载第8代后缀的版本。(默认下载最新版)
注意:通常我们安装完Laravel框架之后,还需要为使用此框架的网站配置 伪静态 文件,内容如下:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
location / {
try_files $uri $uri/ /index.php$is_args$query_string;
}
