OneinStack 是知名 Linux 技术博客 LinuxEye 推出的一个可以一键安装 LNMP(Linux + NGINX + MySQL + PHP)、LAMP(Linux + Apache + MySQL + PHP)、LNMPA(Linux + NGINX + MySQL + PHP + Apache)等建站环境的一键安装包。主要是提供了一个可视化页面,可以直接在页面上选择自己想要的配置,然后自动生成安装命令,然后就等待自动安装完成就行

oneinstack 官网
linux 下载oneinstack
wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar -xvf oneinstack-full.tar.gz

oneinstack集成了acme.sh 工具,可以用 vhost.sh 脚本文件直接申请免费的R3证书,并自动创建计划任务,检测并更新证书到期时间。
oneinstack的文件目录如下:

addons.sh
backup_setup.sh # 备份设置
backup.sh # 执行备份
config
include
init.d
install.log
install.sh # oneinstack环境安装脚本
LICENSE
options.conf # 配置信息存放文件
pureftpd_vhost.sh # ftp管理
README.md
reset_db_root_password.sh # 重置数据库root密码
src # 安装过程使用源码安装,将会把源码文件下载到这个文件夹
tools
uninstall.sh # oneinstack环境卸载脚本
upgrade.sh # 各种插件升级脚本
versions.txt
vhost.sh # 域名证书申请脚本

证书申请
开始之前需要首先购买、备案、并解析域名。
备案帮助文档
解析域名帮助文档
进入 oneinstack 工作目录,使用 root 权限执行 vhost.sh 文件
./vhost.sh

  • 选择生成网站配置文件的方式
What Are You Doing?1. Use HTTP Only2. Use your own SSL Certificate and Key3. Use Let's Encrypt to Create SSL Certificate and Keyq. Exit
Please input the correct option: 3
  1. 不使用证书,直接生成网站配置文件
  2. 使用自定义证书,这个同样需要填写域名等信息,但是脚本不会去R3官网申请证书,配置文件生成后需要手动将自己的证书放在配置文件指定的位置中
  3. 使用 " Let’s Encrypt " 提供的免费证书
  • 输入域名、设置网站根目录
Please input domain(example: www.example.com): demo.leorain.cn
domain=demo.leorain.cnPlease input the directory for the domain:demo.leorain.cn :
(Default directory: /data/wwwroot/demo.leorain.cn):
Virtual Host Directory=/data/wwwroot/demo.leorain.cnCreate Virtul Host directory......
set permissions of Virtual Host directory......

网站根目录
网站根目录对应的是nginx配置中的 root 值,不同的项目对应的 root 路径不同,且对应的索引文件也不同,例如:1、普通的独立站,使用 laravel 的 blade 模板渲染,则需要 root 路径指向 laravel 的 public 目录,索引文件指向 index.php ,并将 quest_string 从定向到 index.php 文件。2、前后端分离项目,需要将网站根目录指向前端的根路径:[web_root]/dist/ ,索引文件指向 index.html ,并将 query_string 指向 index.html

  • 重定向
    这个地方输入域名,如果网站对应多个域名,域名会被重定向到后续输入的域名,例如网站对应两个域名 https://www.leorain.cn 、https://leorain.cn ,并且希望将 https://leorain.cn 重定向到 https://www.leorain.cn ,则需要首先输入 www.leorain.cn 再添加 leorain.cn
  • 防盗链、访问日志等
Do you want to add hotlink protection? [y/n]: nAllow Rewrite rule? [y/n]: yPlease input the rewrite of programme :
wordpress,opencart,magento2,drupal,joomla,codeigniter,laravel
thinkphp,pathinfo,discuz,typecho,ecshop,nextcloud,zblog,whmcs rewrite was exist.
(Default rewrite: other): laravel
You choose rewrite=laravelAllow Nginx/Tengine/OpenResty access_log? [y/n]: y
You access log file=/data/wwwlogs/demo.leorain.cn_nginx.lognginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
Reload Nginx......

使用oneinstack里面的acme模块申请的证书,会自动生成续费计划任务。

  • sudo su 切换root用户申请的证书,自动续费配置文件在/root/.acme.sh/里面
7 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
  • sudo vhost.sh
7 0 * * * "/home/ubuntu/.acme.sh"/acme.sh --cron --home "/home/ubuntu/.acme.sh" > /dev/null

oneinstack自带的acme.sh会因为nginx配置问题, 导致自动续费失败,在网站的nginx配置最后添加以下配置,重载nginx即可自动续费

#  ACME_CRON_NGINX_WELLKNOW BEGIN ANSIBLE MANAGED BLOCK
location /.well-known {allow all;
}
#  ACME_CRON_NGINX_WELLKNOW END ANSIBLE MANAGED BLOCK

博客原文

oneinstack申请免费的R3 域名证书相关推荐

  1. Kubernetes集群配置免费的泛域名证书支持https

    前言 kubernetes 集群默认安装的证书是自签发证书,浏览器访问会发出安全提醒. 本文记录了利用 dnspod . cert-manager .let's encrytp 等开源组件,实现泛域名 ...

  2. 如何搭建HTTPS服务?申请免费的https的证书

    一. 申请免费证书 Let's Encrypt上获取证书,生成证书的操作需要在域名解析到的服务器上进行.目前可以在linux的服务器上,进行如下操作获取免费证书. (1)准备工作 #检查及安装git ...

  3. 使用 acme.sh 生成免费的泛域名证书

    原文发布在 不二博客 在 使用 acme.sh 为网站生成永久免费证书 一文中介绍了如何安装 acme.sh 以及如何生成证书,这篇文章就来说一说如何使用 acme.sh 来生成泛域名证书,即主域名和 ...

  4. centos下申请阿里云泛域名证书并自动更新

    1.设置阿里云的key和secret export Ali_Key="换成你的 AccessKey ID" export Ali_Secret="换成你的 Access ...

  5. 用win-acme生成免费的泛域名证书,域名使用的阿里云

    win-acme官网地址:https://www.win-acme.com/ 下载很难,可以在百度上搜索资源,找一个最近版本的,我用的是版本是 win-acme.v2.1.22.1267.x64.pl ...

  6. 申请免费的国产泛域名证书

    1. 申请免费泛域名证书 云服务商提供的免费证书一般都是单独域名证书,对于泛域名(也可以称为子域名.通配符域名)支持的较少.如果想要使用免费的泛域名,则需要付费购买或者使用Let's Encrypt等 ...

  7. 免费域名证书最新申请方式大全

    目前市场环境下,可获得域名SSL证书的方式有很多,一般有付费和免费划分.对于想免费使用域名SSL证书的朋友,这里收集整理了几个常用的SSL证书申请方式. 对于SSL证书的用处,简单的来说,就是加密数据 ...

  8. 基于 acme.sh 自动申请域名证书(群晖 Docker)

    本文介绍如何使用 Docker 镜像 acme.sh,实现名证书自动申请和续签功能. acme.sh 可以从 letsencrypt 生成免费的证书,支持 Docker 部署,支持 http 和 DN ...

  9. 【转】怎样申请免费空间和一级域名

    共两步: 第一步:打开http://us.5944.net/,在这个网站可以申请到免费的域名和空间,空间大小1000M,一般的小网站够用了,还可以申请到一个域名,不过这个域名是二级域名,如 http: ...

最新文章

  1. day58-activiti 02-历史数据查询
  2. 亚马逊新品流量是上架开始算吗?
  3. java如何停止函数循环_在Java中使用break来退出循环是不好的做法吗?
  4. Django框架——视图
  5. delphi 调用php接口_《细说PHP》第四版 样章 第23章 自定义PHP接口规范 5
  6. php父子遍历,jQuery 遍历
  7. 驱动中的资源共享和临界代码保护
  8. 洛谷 P2010 回文日期
  9. matlab中字符串的大小比较,matlab中字符串的最大大小
  10. Problem D: 求三角形面积-gyy
  11. iOS 字体集(图文并茂)
  12. 嵌入式Linux容器技术
  13. 好友已经删了,还能在电脑中找到聊天记录吗
  14. 【数据结构】查找算法
  15. 用SmartDraw绘制需求分析过程中的功能图
  16. DECIMAL Data Type Characteristics
  17. 七月算法机器学习笔记4 凸优化
  18. magisk简易制作教程
  19. macos系统终端命令失效
  20. 牛客网 - [北京信息科技大学第十一届程序设计竞赛]kotori和气球(排列组合)

热门文章

  1. 从k8s集群主节点数量为什么是奇数来聊聊分布式系统
  2. sphinx配置文件解析
  3. 微信小程序的全局变量和单例
  4. PHP拆分粘连的英文单词,英语单词拆分技巧
  5. linux常用指令汇总
  6. 嵌入式系统项目设计——基于LED、按键、蜂鸣器的打地鼠游戏(完整代码)
  7. 中关村回收贩曝黑幕:翻新一部iPhone4可赚2000元
  8. 不用动脑的Maxent下载过程
  9. python中frame用法_Python实例之wxpython中Frame使用方法
  10. 2018年回顾和收获