Laravel 学习笔记:发送邮件

在我最初的设计中一共有两个地方需要发送邮件: 第一就是用户注册,发送邮件激活 第二就是当用户订阅一个书单的时候,自动给所有订阅的用户发送带有附件的电子书到其设定的邮箱中 所以接下来就记录一下使用 Laravel 发送邮件。 在 Laravel 中发送邮件并不是那么复杂。Laravel 通过 Symfony Mailer 实现了一套非常简洁的邮件 API。 Laravel 中提供了很多种方式来发送邮件: [[SMTP]] 直接配置 SMTP服务器 [[Mailgun]] 通过 Mailgun 等发送邮件的服务提供商 [[ Read more ...

2022-03-29 laravel , email , sendmail , mailer , mailgun , smtp

DMARC 报告

在搭建了自己的邮件服务器之后,经常收到 Gmail 和 Outlook 的 Report,类似: Report domain: example.com Submitter: google.com Report-ID: 73941XXXXX 或 Report Domain: example.com Submitter: protection.outlook.com Report-ID: 200aa9XXXXXXXXXX 所以再整理一下 DMARC 报告。 在之前介绍 DMARC 的文章中介绍过其中 rua 和 ruf 两个配置的作用,这两个配 Read more ...


Laravel 学习笔记:文件上传

上传文件是一个网页应用必不可少的一部分,这里就记录一下 Laravel 中如何上传,并展示图片。 拆分开来主要分为如下几个步骤: 创建数据库 Model,用一个 Model 实体来保存上传图片的路径以及相关的 meta 信息 添加 Controller 层用来处理保存图片逻辑,以及持久化的过程 创建前端 Form 表单,并提交 POST 请求,提交图片 创建数据库 Model 首先使用 artisan 创建一个 Model 和 migration: php artisan make:model Photo -m 这行命令会创建 Read more ...

2022-03-28 laravel , file-upload

Laravel 学习笔记:开发环境搭建

Laravel 提供了多种安装方式: 可以通过官方提供的 [[Laravel Sail]] 初始化环境,Laravel Sail 是一个轻量的命令行工具可以和 Docker 开发环境交互。这意味着如果要使用 Sail 本地需要安装 Docker 环境。 通过 [[Composer]] 安装,Composer 是一个 PHP 环境下的依赖管理器工具 Laravel Installer Laravel Sail Sail 的核心是项目中的 docker-compose.yml 文件。 curl -s "https://laravel.b Read more ...

2022-03-26 laravel , php , dev , ide , phpstorm , jetbrains , docker

Laravel 21 天学习计划

从上周开始和朋友进行一个以 21 天为一个周期的计划,每个人都制定了一个 21 天的目标,从计划到完成每一个步骤都计分,最后按照打分给每个小伙伴奖励或者惩罚。 所以我从我的计划列表中搜寻了一下大致看了一些 TODO,很多细碎的任务大都花不了一两天时间,所以就思考了一下有没有什么目标适合这个时间段,后来发现最近自建的一些项目好像都是用一个框架写成的,比如有一个可以自建的 PT 站 [[UNIT3D]],比如非常轻量的论坛 [[Flarum]],还有 [[Koel]] 一个在线的音乐播放器,还有很多很多。所以想来 21 天可以用来熟悉一下这个框架,也可以用 Read more ...


Warp 终端初体验

Warp 是一个 Rust 编写,使用 GPU 渲染的终端(terminal)应用。目标是提升开发者的效率。 最近 Warp 发布了新闻稿,筹集了 2300 万美元的资金全力用来构建这个终端。 它之前筹集了 600 万美元的种子轮融资,由 GV 领投,Neo 和 BoxGroup 参投。还筹集了 1700 万美元的 A 轮融资,由 Figma 的联合创始人兼首席执行官 Dylan Field 领投。由企业家主导的这一轮投资,其参与者包括 Elad Gil、LinkedIn 前首席执行官 Jeff Weiner 和 Salesforce 的联合创始人兼 Read more ...

2022-03-23 terminal , macos , warp , rust , gpu , command , iterm , tmux , vim , zsh

Ubuntu 上命令行设置时区

一台新的 Ubuntu 服务器通常时区可能不是想要的时区,可以通过如下步骤设定时区。 检查当前时区,在命令行下输入 date: date 可以查看当前的时间。 输入 timedatectl 可以查看更具体的时区。 使用 timedatectl 修改为东八区北京时间。 sudo timedatectl set-timezone "Asia/Shanghai" ln 也可以通过软链接来修改系统的时区,在 Linux 下 /etc/localtime 中定义了系统要使用的时区。正确的配置在 /usr/share/zonefine 目录中 m Read more ...

2022-03-22 ubuntu , server , timezone

什么是 DMARC

DMARC 是 Domain-based Message Authentication Reporting & Conformance 的缩写,是一个标准的电子邮件验证标准。1 DMARC 帮助邮箱管理员防止黑客或其他攻击者伪装(Spoofing)其组织和域名。Spoofing(伪装)是一种电子邮件攻击方式,攻击者通过伪装邮件地址中的 From 字段,来假装发件人。DMARC 会检查电子邮件是否来自邮件中声称的发送者。 DMARC 构建在 [[SPF]] 和 [[DKIM]] 基础之上,来防止域名欺诈。 之前提到过自建域名邮箱 的文章中就配置 Read more ...

2022-03-20 dmarc , email , domain , spf , dkim

Go 语言学习笔记 4:Go 语言的控制语句

常见的语句: condition,条件 for-loop,循环 goto,跳转(特殊) statement vs expression 下文中使用 statement 和 expression 来表达一些语句的区别: statement, 通常用来指代一个操作,可以是赋值操作,等等 expression 通常用来指代一个值,这个值可以是一个语句的返回,也可以是一个函数的返回 条件语句 通用: if InitSimpleStatement; Condition { // do something } else Read more ...


充分利用 Oracle 机器避免被回收

最近收到 Oracle(甲骨文) 一封名为「Oracle Cloud Infrastructure Compute - Resource Maintenance Reminder」 的邮件,大致意思就是如果 Oracle Always Free 的机器使用率比较低的话,Oracle 就会判定 Compute Instances 处于 Idle (闲置)状态,Oracle 将保留回收实例的权力。 如何判定机器是处于闲置状态呢,在 Oracle 给出的官方文档 是这样描述的: • CPU utilization for the 95th percenti Read more ...

2022-03-08 oracle , vps , self-hosted , docker , linux

最近文章

  • Dia 浏览器初体验 很久以前写过一篇 Arc 浏览器初印象, 一晃已经过去了 3 年,Arc 提出来了很多浏览器的创新功能,比如非常抢眼的无地址栏设计,侧边栏 Spaces 独立空间,智能标签页管理,分栏分屏,快捷命令栏,内置应用的迷你预览窗口,内置的白板和笔记等等。在过去的很长一段时间当中, Arc 都是我的备用浏览器,之所以没有成为主力是因为我的很多工作流还依赖于 Chrome 以及 Chrome 下庞大的插件生态。但是 Arc 浏览器的创始人在前段时间宣布了停止更新 ARK,并且推出了一款新的浏览器,All in AI,这款新的浏览器叫做 Dia。
  • Claudia 可视化管理 Claude Code Claudia 是一款专为 Anthropic  的 Claude Code 设计的开源图形用户界面(GUI)桌面应用,可以创建自定义代理,交互式管理,以及在后台运行。它将命令行形式的 Claude Code 转换为直观的可视化操作界面,显著提升了  AI 辅助编程的用户体验。
  • Claude Code Sub Agent 功能说明 Claude Code Sub Agents (子代理) 是 Anthropic 在 Claude Code 工具中推出的一项新功能,允许开发者创建专门的 AI 助手来处理特定类型的编程任务。功能在 v1.0.60 版本中正式发布。
  • 远程控制 Claude Code 让 AI 一刻不停 日常都是在终端里面使用 Claude Code 进行代码的编写,但是因为 Cloud Code 每一次执行都要花费很长的时间等待,那我想着有没有一种方法可以让我们进行远程的控制,比如说在 Cloud Code 完成大段代码的编写之后,即使我们不在电脑旁,我们也可以继续让 Cloud Code 进行下一个需求的编写。
  • 为程序员而设计的屏幕共享服务:Screego 或许你曾经有过这样的经历,你想要把自己的屏幕分享给自己的好友或者是工作伙伴,你会发现自己可能需要打开 Microsoft Teams 或者是 Google Meet,然后使用它内建的屏幕分享的功能来分享自己的屏幕。但是这些工具的话,他们要不就是需要你们共同拥有账号,并且打开可能会有几秒钟的延迟,要不就是他们分享的质量会很差,甚至都无法看清自己的屏幕上的文字或者代码。

赞助