如何将laravel写的程序部署放到虚拟主机上
用composer重新dump一下autoload文件就好了
你的代码是在windows上开发的,autoload是根据windows下的目录结构生成的,与服务器上的不匹配,在服务器上重新生成一份就可以了
cd到项目目录,执行下面的命令,当然你的服务器环境要先安装composer
composer dump-autoload -o推荐学习路径
1 框架的使用知识学习
基于以上的思想,我创建了 《Laravel 实战课程》,计划中有三本(也有可能更多),分别是:
第一本 —— 《Laravel 入门教程 - 从零到部署上线》
第二本 —— 《Laravel 进阶课程 - 从零开始构建论坛系统》
第三本 —— 《Laravel 高级课程 - 构架 API 服务器》
第一本书教授如何使用 Laravel 一步一步构建一个类似新浪微博的应用,书中很多技术话题会被一带而过,这是有意而为之的,我们希望让读者保持对编码线索的专注,不被篇幅悠长的名词解释分心。通过阅读本教程,你将学到如 HTML、CSS、JavaScript、PHP 和 Laravel 等 Web 开发相关的基础知识。不仅如此,本书还会对这些基础知识点进行延伸扩展,为你讲解一些在 Web 开发中更为专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流、Bootstrap 框架基本使用等。这些知识将为你未来的编程开发奠定下坚实的基础。
第二本以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。编码规范遵循 Laravel 项目开发规范 ,应用程序架构思路贴近 Laravel 框架的设计哲学。在论坛系统的构建中,我们将学到多角色用户权限系统、管理员后台、注册验证码、上传、裁剪,XSS 防御、自定义命令行、自定义中间件、任务调度、队列系统的使用、应用缓存、Redis、模型事件监控、表单验证、消息通知、邮件通知、模型修改器等知识。在本课程的学习中,你不仅能学到使用 Laravel 开发一个论坛项目,还能学到安全优先、高扩展性的大型项目架构经验。
第三本将以构建 API 服务器为目标,来展开。目前本课程正在紧张撰写中,敬请期待。
2 框架的底层实现学习
学完了以上三本书,你将拥有一定的项目开发经验,对框架的功能使用也会有一个比较全面的系统性理解。这时候,会是学习『底层实现』的好时机。
底层实现的知识学习,可以从文档开始,打开 Laravel 的文档中心 —— dlaravel-chinaorg ,找到最新版本的 Laravel 文档,然后仔细阅读 2、3 遍。因为有了上面的项目经验,此时的文档阅读啃起来会轻松多了。
阅读文档后,可以尝试看下 Laravel 底层的源码,看看这些框架的功能都是怎么实现的。
学习过程中可以适当做笔记,例如:
zhangbao 同学的 Laravel 文档阅读笔记
leoyang 同学的 Laravel 源码分析笔记
错误的学习方法
一上来就开始啃文档 dlaravel-chinaorg 。
如果你是新手,有太多的新概念你需要学习,你会发现学习起来非常艰难,甚至怀疑文档是不是写的太烂了(社区里经常出现这种抱怨)。
事实上,不是文档写的太烂,而是你把文档用错了。文档的『目的』是快速查阅,一份优秀文档的标准是语言简练,释义,这个 Laravel 的文档做的很棒。但是,文档并不适合做入门学习使用,上面我们已经讲过,原因是信息量太大。
寻找网络上零散的课程进行学习。
如果你想学习单个概念,这些零散的小课程会很方便。但是,如果是想以阅读大量课程来达到系统性学习的目的,你将会很失望。很多时候你会感觉 —— 你好像学了很多,学了很久,以为自己学会了,但是心里还是没底气。
你需要的是通过项目,完整的项目,将所有的知识串起来去记忆。你的作品,清清楚楚摆在面前,看着你一步步构建出来的一套系统,自信心也会有所增加。
一开始就学习高级话题,如 服务容器、服务提供器、Facades、Contracts、Repository 等
很多时候你会发现这些话题晦涩难懂,很难学习。并且即使你毅力比较好,死记硬背,很快也会忘记,学习效率非常低下。然后最重要的,学会这些概念,并无法使你掌握构建一个完整项目的能力。
Homestead安装与配置
安装 VirtualBox / VMWare 与 Vagrant
启 Homestead 环境前必须先安装 VirtualBox Vagrant 两套软件各平台都提供易用视化安装程序
VMware
除 VirtualBox 外 Homestead 支持 VMware 使用 VMware 作provider, 需要购买 VMware Fusion / Desktop 及 VMware Vagrant plug-in VMware 提供更快、性能更共享文件夹
增加 Vagrant 封装包
VirtualBox / VMware Vagrant 安装完终端机列命令laravel/homestead封装包安装进 Vagrant 安装程序载封装包花点间间短依据网络速度决定:
vagrant box add laravel/homestead
命令失败 能安装版本 Vagrant 需要指定完整URL:
vagrant box add laravel/homestead
安装 Homestead
手通 Git 安装(本端没 PHP)
希望本机安装 PHP 简单通手复制资源库式安装 Homestead资源库复制至home目录 Homestead 文件夹 Homestead 封装包能提供主机服务给所 Laravel(及 PHP)应用:
git clone Homestead
旦安装完Homestead CLI工具即执行bash initsh命令创建Homesteadyaml配置文件:
bash initsh
Homesteadyaml文件放置——/homestead目录
通 Composer + PHP 工具
旦封装包已经安装进 Vagrant 安装程序准备通Composer global命令安装Homestead CLI工具:
composer global require laravel/homestead=——20
请务必确认 homestead 放置目录——/composer/vendor/bin才能终端机顺利执行 homestead 命令
旦安装完 Homestead CLI 工具即执行init命令创建Homesteadyaml配置文件:
homestead init
Homesteadyaml放置——/homestead文件夹使用 Mac 或 Linux直接终端机执行homestead edit命令编辑Homesteadyaml:
homestead edit
配置 Provider
Homesteadyaml文件provider键表明需要使用 Vagrant prodiver:virtualbox或者vmware_fusion根据自喜设定 provider
provider: virtualbox
配置 SSH 密钥
需要编辑Homesteadyaml文件配置 SSH 公密钥及主要机器与 Homestead 虚拟机间共享目录
没 SSH 密钥 Mac Linux 利用面命令创建 SSH 密钥组:
ssh-keygen -t rsa -C you@homestead
Windows 需要安装 Git 并且使用包含 Git Git Bash执行述命令另外使用 PuTTY PuTTYgen
旦创建 SSH 密钥记Homesteadyaml文件authorize属性指明密钥路径
配置共享文件夹
Homesteadyaml文件folders属性列所想 Homestead 环境共享文件夹列表些文件夹文件若变同步本机与 Homestead 环境需要共享文件夹都配置进
要启 NFS需要folders加入标识:
folders:
- map: ——/Code
to: /home/vagrant/Code
type: nfs
配置 Nginx 站点
Nginx 熟悉没关系sites属性允许简单应域名 homestead 环境目录例站点配置Homesteadyaml文件同加任何需要站点 Homestead 环境Homestead 每进行 Laravel 应用提供便虚拟化环境
通配置hhvm属性true让虚拟站点支持 HHVM:
sites:
- map: homesteadapp
to: /home/vagrant/Code/Laravel/public
hhvm: true
Bash Aliases
要增加 Bash aliases Homestead 封装包要内容添加——/homestead目录层aliases文件即
启 Vagrant 封装包
根据喜编辑完Homesteadyaml终端机进入 Homestead 文件夹并执行homestead up命令
Vagrant 虚拟机机并且自配置共享目录 Nginx 站点要移除虚拟机使用vagrant destroy --force命令
Nginx 站点别忘记机器hosts文件「域名」加进hosts文件本域名站点请求指向 Homestead 环境 Mac Linux该文件放/etc/hosts Windows 环境放置C:\Windows\System32\drivers\etc\hosts要加进内容类似:
1921681010 homesteadapp
务必确认 IP 址与Homesteadyaml文件相同旦域名加进hosts文件通网页浏览器访问站点
基础:搭建lamp环境,php语言(函数,结构,数据库Drivers)
中级:缓存(redis、memcache等),数据库设计(主从分离),服务器配置(linux系统学习、动静分离、负载均衡等)
高级:熟练运用各大框架(thinkphp、CI、YII、laravel等)建议:thinkphp最简单,可以由此入门
骨灰级:研究php语言核心,加入php核心团队,做文档,拓功能,推动php发展(膜拜鸟哥)
我的Linux ,你开启了重写模块吗
LoadModule rewrite_module modules/mod_rewriteso前面的#去掉
<Directory />
Options FollowSymLinks
AllowOverride ALL
</Directory>
<Directory "/mnt/www/">
AllowOverride ALL
Order allow,deny
Allow from all
</Directory>
搜索AllowOverride None 替换为 AllowOverride All
php入门教程:
1 了解PHP的基本语法:
PHP是一种脚本语言,它使用缩进和注释来组织代码。
了解变量、数据类型、运算符和条件语句等基本语法元素。
学习如何使用条件语句(如if语句和switch语句)和循环语句(如for循环和while循环)
2 安装PHP:
在您的计算机上安装PHP。您可以从PHP官方网站下载适合您操作系统的安装包。
确保您的Web服务器(如Apache)已配置为运行PHP。
3 创建简单的PHP文件:
创建一个新的文本文件,并将其保存为`php`扩展名。
在文件中编写简单的PHP代码,例如打印“Hello, World!”到浏览器。
将文件上传到您的Web服务器,并通过浏览器访问该文件来查看输出。
4 学习PHP内置函数:
PHP提供了一组内置函数,可用于执行常见任务,如文件操作、字符串处理和数据库连接等。
学习如何使用这些内置函数,并了解它们的作用和用法。
5 使用数据库:
PHP可以通过MySQL等数据库管理系统与数据存储交互。
学习如何使用PHP连接到数据库,执行查询和更新操作,并获取结果。
6 学习HTML和CSS:
PHP通常与HTML和CSS一起使用来构建Web页面。
学习HTML的基本结构和标签,以及如何使用CSS来样式化页面。
7 学习JavaScript:
JavaScript是一种用于增强Web页面交互性的脚本语言。
学习如何使用JavaScript与PHP进行交互,例如通过AJAX实现异步通信。
8 学习框架和库:
PHP有许多流行的框架和库可供选择,如Laravel、CodeIgniter和Symfony等。
选择一个适合您需求的框架或库,并学习如何使用它来加速开发过程。
9 实践项目:
通过实践项目来应用所学知识,例如创建一个简单的博客网站或用户管理页面等。
在项目中综合运用PHP、HTML、CSS和JavaScript等技能,以提高您的实际应用能力。
10 阅读文档和资源:
查阅PHP官方文档,以获取更多关于语言特性的信息和教程。
参加在线教程、课程和论坛,与其他PHP开发者交流学习心得和经验。
实践编程的过程中,不断积累经验和知识,并持续提升自己的技能水平。
通过以上步骤,您将逐步入门PHP编程,并能够构建简单的动态网页和Web应用程序。祝您学习愉快,成为一名优秀的PHP开发者!
在工程项目跟目录下的config/filesystemsphp 数组 disks添加
'admin' => [
'driver' => 'local',
'root' => public_path('upload'),
'visibility' => 'public',
'url' => env('APP_URL')'/upload/',
],
0条评论