解决gogs勾选“使用选定的文件和模板初始化仓库”报错500,gogs邮件发送失败,gogs邮件配置不生效,gogs自定义模板等问题

解决gogs勾选“使用选定的文件和模板初始化仓库”报错500,gogs邮件发送失败,gogs邮件配置不生效,gogs自定义模板等问题

前几天出了教程本地部署gogs,在后期运行时发现两个问题:

第一:邮件明明配置了,后台显示未配置,不生效

第二:在新建仓库时勾选“使用选定的文件和模板初始化仓库”报500错误或者其他各种奇葩错误,在网上查了各种资料都无法解决,最终耗时48个小时,终于解决了。

先解决邮件问题,直接替换成如下配置即可。

vim XX/gogs/custom/conf/app.ini  ## gogs所在的真实路径

将以下代码复制到mailer下

[mailer]
[email]
ENABLED = true;启用邮件配置在这里呢
;进入电子邮件配置部分。
ADD_PLAIN_TEXT_ALT = true
SUBJECT_PREFIX = [%(BRAND_NAME)s]
;设置主题行的前缀。这个前缀会在邮件主题的最前面出现,通常用于标识邮件的来源。%(BRAND_NAME)s是一个占位符,可能会在实际发送邮件时被替换为相应的品牌名称。
HOST = smtp.126.com:25   ;SMTP服务器的主机和端口126的邮箱也是一个大坑,端口是25
FROM = XXX@126.com  ;指定邮件发送者的邮箱地址。不要填写别的内容,否则QQ邮箱将无法正常接受邮件!!!!
USER = XXX@126.com  ;指定登录SMTP服务器所需的用户名,与发件人邮箱地址相同。
PASSWORD = DIRHLXGDRQADXTQO  ;这里不是邮箱密码!!不是邮箱密码!!不是邮箱密码!!是授权码!!! 授权码!!!授权码!!!
DISABLE_HELO =true  ;控制是否禁用HELO操作,当主机名不同时使用。HELO是SMTP协议的一部分,用于在SMTP会话开始时标识发件人的主机。
;HELO_HOSTNAME =  ;指定用于HELO操作的自定义主机名。
;SKIP_VERIFY = false  ;控制是否跳过验证服务器的证书。设置为“false”表示不跳过,即会验证服务器的证书。
;USE_CERTIFICATE = false  ;控制是否使用客户端证书进行身份验证。
;CERT_FILE = custom/email/cert.pem  ;指定客户端证书文件的路径。
;KEY_FILE = custom/email/key.pem  ;指定客户端私钥文件的路径。
;USE_PLAIN_TEXT = false  ;控制是否使用“text/plain”作为邮件内容的格式。控制是否在发送HTML邮件时附加纯文本备用。这样做是为了支持老版本的邮件客户端,并让垃圾邮件过滤器更加愉快。如果需要启用,这里设置为true

;对于 DISABLE_HELO 和 HELO_HOSTNAME 两个配置项:

DISABLE_HELO:
;这个选项用于控制是否禁用 SMTP 协议中的 HELO 操作,当发件人的主机名与实际主机名不匹配时。通常,SMTP 服务器在会话开始时会发送一个 HELO 或 EHLO 命令,以标识自己的主机名。如果设置为 true,表示禁用这个标识;如果设置为 false,则会使用系统的主机名。一般情况下,建议将其设置为 false,除非有特殊需求。

HELO_HOSTNAME:
; 这个选项用于指定自定义的主机名,用于在 SMTP 会话开始时发送 HELO 或 EHLO 命令时使用。如果 DISABLE_HELO 被设置为 true,那么这个选项就不会起作用。如果需要自定义 HELO 操作中使用的主机名,就需要设置这个选项。一般情况下,如果没有特殊需求,可以将其保持为空或者与系统的实际主机名一致。
在这里插入图片描述

天坑 在[mailer] 里边直接配置ENABLED = true是不生效的,结果就是茹茹

在这里插入图片描述

一定一定要配置到[mailer][email]里边,邮件配置完毕,务必重启gogs!务必重启gogs!务必重启gogs!

[mailer]
;ENABLED = true  ;注释掉
[email]
ENABLED = true

在这里插入图片描述
在这里插入图片描述

按照以上配置邮件,则可以正常使用。如果是gmail的话,还需要进行授权。

错误描述:Gmail 发送返回 Error 534: Please log in via your web browser and then try again

可能原因:这是因为 Google 不信任您的服务器导致的。

解决方案:

访问 https://accounts.google.com 并登录。

访问 https://accounts.google.com/DisplayUnlockCaptcha 单击 continue。

重试发送。

第二个问题 解决gogs勾选“使用选定的文件和模板初始化仓库”报错500

An error has occurred : initRepository: initRepoCommit: git push: warning: push.default 未设置,它的默认值将会在 Git 2.0'matching' 修改为 'simple'。若要不再显示本信息并在其默认值改变后维持当前使用习惯, 进行如下设置: git config --global push.default matching 若要不再显示本信息并从现在开始采用新的使用习惯,设置: git config --global push.default simple 参见 'git help config' 并查找 'push.default' 以获取更多信息。 ('simple' 模式由 Git 1.7.11 版本引入。如果您有时要使用老版本的 Git, 为保持兼容,请用 'current' 代替 'simple' 模式) No refs in common and none specified; doing nothing. Perhaps you should specify a branch such as 'master'. fatal: The remote end hung up unexpectedly error: 无法推送一些引用到 '/git/gogs-repositories/zero/create_new_git.git'Application Version: 0.13.0

在这里插入图片描述

这一段的意思很明确,如果意思git版本小于2.0则 ‘matching’ 修改为 ‘simple’,反之则是小于2.0版本的我们需要执行git config --global push.default matching即可,我执行了,gogs重启了,结果没有毛用,依旧报错。废话不多,直接上思路及解决方法。【git小于2.0版本的有设置成功的欢迎留言/私信交流】

问题排查

第一:先查看git版本

git --version

如果git小于2.0版本,不要挣扎了,直接升级git版本。以下为升级的全部过程,这里我升级的2.9.5版本 _ 升就升到最新

git的官网下载链接 点此下载git

在这里插入图片描述

第一步 安装依赖,这里一行一行的写,方便各位码友复制也方便各位码友理解

yum groupinstall "Development Tools"  -y  # 安装Development Tools包工具
yum install gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel curl-devel  libcurl-devel expat-devel  perl-ExtUtils-MakeMaker -y 

第二步 下载git

wget https://www.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz --no-check-certificatec   #可以不用  --no-check-certificatec 如果报错错误: 无法验证 www.kernel.org 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:颁发的证书已经过期。要以不安全的方式连接至 www.kernel.org,  就加上  个人建议直接加上个

第三步 解压git包 并进入git文件

tar -zxf git-2.9.5.tar.gz   && cd git-2.9.5

第四步 进行编译 这里将git安装到/usr/local/git目录中

make prefix=/usr/local allcc

在这里插入图片描述

如果没有报错,直接进行安装即可
make prefix=/usr/local allcc

在这里插入图片描述

第五步 如上图则表示安装成功,查看git版本是否为2.9.5

git --version

第六步 非常豪横的执行设置simple

git config --global push.default simple

设置完毕之后查看是否设置成功

git config --list

在这里插入图片描述

如果则表示设置成功。

第七步 将gogs进行重启,以下为配置server服务的重启方式

systemctl restart gogs

第八步 查看gogs的运行状态

systemctl status gogs

在这里插入图片描述

到这里就彻底OK了,打开gogs新增一个试试

在这里插入图片描述

在这里插入图片描述

截止到此 gogs勾选“使用选定的文件和模板初始化仓库”报错500彻底解决啦。

在多讲一下,如何更换gogs的模板,这里只讲操作流程,自行实践

第一步 将源码克隆下来,建议放到/opt目录下,你可以随便放,但是一定一定一定不要放到gogs目录中

git clone  https://github.com/gogs/gogs.git gogs

克隆完毕之后找到templates 这里边就是页面源文件

在这里插入图片描述
在这里插入图片描述
想要修改那个页面,就把哪个页面的文件夹复制过去。
在这里插入图片描述

看官网介绍,在gogs的/custom目录下建立一个templates目录

在这里插入图片描述

如果需要修改静态文件,如icon图标,logo等,则查看下图

在这里插入图片描述

写在最后,模板文件是.tmpl结尾,前端小伙伴肯定非常熟悉,不熟悉的就把它当做html写即可。

在这里插入图片描述

***

如果各位码友在实际操作中遇到任何问题,欢迎留言或私信交流。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/703803.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

这家宠物品牌的内容运营怎么做的?太好玩儿了吧

养宠的朋友应该多多少少对“诚实一口”这个牌子有所耳闻,2018年诚实一口品牌正式立项,虽然不算经典品牌,但在国内也是小有名气的宠物品牌。今天媒介盒子想和大家聊的不是产品,而是想聊聊作为成立时间不长的国产宠粮品牌是如何凭借…

【数据结构】栈OJ题《用栈实现队列》(题库+解析+代码)

1. 前言 通过前面栈的实现和详解大家对队列应该有一定熟悉了,现在上强度开始做题吧 栈详解:http://t.csdnimg.cn/9Fsbs 本体的做题思路也可以参考上一篇文章,就是有一点点不同。 用队列实现栈:http://t.csdnimg.cn/V2qjW 2. …

小型内衣裤洗衣机哪个牌子好?四大顶尖内衣洗衣机测评分享

要知道,内衣裤可能会残留我们身体分泌的尿液,或者是没有擦干净的便便,以及其他的一些分泌物,据科学家研究发现,内衣裤是含有很多细菌和病毒的地方,如果将内衣裤和衣服放在一起洗,导致这些细菌附…

Docker基础篇(六) dockerfile体系结构语法

FROM:基础镜像,当前新镜像是基于哪个镜像的 MAINTAINER :镜像维护者的姓名和邮箱地址 RUN:容器构建时需要运行的命令 EXPOSE :当前容器对外暴露出的端口号 WORKDIR:指定在创建容器后,终端默认登…

《Docker 简易速速上手小册》第4章 Docker 容器管理(2024 最新版)

文章目录 4.1 容器生命周期管理4.1.1 重点基础知识4.1.2 重点案例:启动并管理 Python Flask 应用容器4.1.3 拓展案例 1:调试运行中的容器4.1.4 拓展案例 2:优雅地停止和清理容器 4.2 容器数据管理与持久化4.2.1 重点基础知识4.2.2 重点案例&a…

C++力扣题目 42--接雨水 84--柱状图中最大的矩形

42. 接雨水 力扣题目链接(opens new window) 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1]输出:6解释&#xff…

一键解锁本地大型语言模型!Ollama框架让你轻松运行Gemma

想要在本地运行大型语言模型吗? Ollama框架提供了这样的机会。 这个框架是专为在Docker容器中部署LLM而设计的,简化了部署和管理流程。 安装Ollama后,你只需执行一条命令,即可在本地运行开源大型语言模型。 它将模型权重、配置…

Less预处理器教程

学习源码可以看我的个人前端学习笔记 (github.com):qdxzw/frontlearningNotes 觉得有帮助的同学,可以点心心支持一下哈 一、Less介绍 less官方文档 lesscss.org/ less中文文档 less.bootcss.com/ less是一种css预处理器,它扩展了css语言&#xff0c…

Docker复习笔记

Centos7安装Docker Docker官网:www.docker.com Docker官网仓库:hub.docker.com Docker文档是比较详细的 安装相关依赖 yum -y install gcc gcc-c yum install -y yum-utils 设置docker镜像仓库 yum-config-manager --add-repo https://download.docker.com/linux/centos/do…

OpenCV开发笔记(七十五):相机标定矫正中使用remap重映射进行畸变矫正

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/136293833 各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究 红胖子(红模仿…

网络设备和网络软件

文章目录 网络设备和网络软件网卡交换机交换机的三个主要功能交换机的工作原理第二层交换和第三层交换交换机的堆叠和级联 路由器路由器工作原理 网关网关的分类 无线接入点(AP)调制解调器网络软件 网络设备和网络软件 网卡 网络接口卡又称网络适配器,简称网卡。网…

【计算机网络】数据链路层--以太网/MTU/ARP/RARP协议

文章目录 一、以太网1.以太网帧格式2.MAC地址3.局域网的转发原理 二、MTU1.什么是MTU2.MTU对IP协议的影响3.MTU对UDP影响4.MTU对于TCP协议的影响 三、ARP协议1.ARP协议的作用2.ARP数据报的格式3.ARP协议的工作流程 一、以太网 “以太网” 不是一种具体的网络, 而是一种技术标准…

论文阅读:《High-Resolution Image Synthesis with Latent Diffusion Models》

High-Resolution Image Synthesis with Latent Diffusion Models 论文链接 代码链接 What’s the problem addressed in the paper?(这篇文章究竟讲了什么问题?比方说一个算法,它的 input 和 output 是什么?问题的条件是什么) 这篇文章提…

音视频剪辑|Windows|抽帧和合帧

什么是抽帧? FFmpeg 抽帧(Extracting frames)的作用是从视频文件中按需提取单张或多张静止图像(帧),并将它们保存为图片文件(如 JPEG、PNG 等格式)。这一功能在以下场合十分有用&am…

Python服务器监测测试策略与工具:确保应用的高可用性!

在构建高可用性的应用程序时,服务器监测测试是至关重要的一环。Python作为一种强大的编程语言,提供了丰富的工具和库来帮助我们进行服务器监测测试。本文将介绍一些关键的策略和工具,帮助你确保应用的高可用性。 1. 监测策略的制定&#xff…

Vue3 (unplugin-auto-import自动导入的使用)

安装 参考链接 npm i -D unplugin-auto-importvite.config.ts里面配置 import AutoImport from unplugin-auto-import/viteAutoImport({imports:[ vue,vue-router]})重新运行项目会生成一个auto-imports.d.ts的文件 /* eslint-disable */ /* prettier-ignore */ // ts-nochec…

YOLOv9尝鲜测试五分钟极简配置

pip安装python包: pip install yolov9pip在https://github.com/WongKinYiu/yolov9/tree/main中下载好权重文件yolov9-c.pt。 运行下面代码: import yolov9model yolov9.load("yolov9-c.pt", device"cpu") # load pretrained or c…

苹果手机动画演示动画PR样机模板视频素材 iPhone Mockup 7.0

适用于Premiere苹果手机动画演示PR样机模板视频素材 iPhone Mockup 7.0 产品信息: 5款支持alpha频道的动画智能手机。 轻松关闭屏幕上的背景、阴影和反射。 适用于Premiere Pro 2023 每个样机持续时间为13秒。 4K分辨率。 轻松更改颜色。 适用于图像或视频。 包括视…

m估计及其c++简单实现

文章目录 什么是m估计怎么求解m估计呢?Huber函数时的线性m估计 什么是m估计 自20世纪60年代稳健统计建立以来,在国内外众多学者的研究之下,诞生了一系列稳健统计重要理论和成果。其中最主要且广泛使用的稳健统计有以下三类: L-e…

Jmeter学习系列之八:控制器Controllers 的入门介绍

一、Controllers 简介 Jmeter有两种类型的控制器:Samplers(取样器)和Logical Controllers(逻辑控制器);它们驱动着测试的进行取样器:让jmeter发送请求到服务器以及接收服务器的响应数据逻辑控制…