1 Star 0 Fork 0

杨大虾 / yangdx_blog_new

Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

杨大侠的博客

使用 Lumen 框架开发的单用户博客系统

介绍

安装说明

  • PHP 版本 7.3 及以上。
  • MySQL 版本 5.6 及以上。
  • 目录 storagepublic/upfiles 必须设置为可写权限。
  • 数据库表结构在 database/blog.sql 里,请创建数据库后导入此文件。含有部分文章、分类等测试数据,如不需要可以清空表,但不要清空 settings、users 这两个表。
  • 复制 .env.example.env,并修改相关配置项(后面有说明)。
  • 在命令行模式下进入网站根目录,执行 composer install 来安装依赖包。

配置文件 .env 说明

# 应用名称
APP_NAME=Blog
# 应用环境,生产环境填“production”,测试环境填“local”或其他
APP_ENV=local
# 应用密钥,用于加解密,填写32位字符的随机字符串
APP_KEY=
# 是否开启调试模式
APP_DEBUG=true
# 应用首页地址,末尾不要带“/”
APP_URL=http://localhost
# PHP时区设置,“Asia/Shanghai”是亚洲上海,即北京时间
APP_TIMEZONE=Asia/Shanghai
# 语言包设置,对应“resources/lang”目录下的子目录名称
APP_LOCALE=zh-CN

# 数据库连接配置,“+08:00”是东八区,即北京时间
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=blog
DB_USERNAME=root
DB_PASSWORD=123456
DB_COLLATION=utf8mb4_general_ci
DB_TIMEZONE=+08:00

# Redis连接配置,如没有安装redis扩展可不管
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=

# 缓存使用Redis,如没有安装redis扩展请注释掉这行
CACHE_DRIVER=redis

# 腾讯云验证码:https://cloud.tencent.com/document/product/1110
TENCENT_SECRET_ID=
TENCENT_SECRET_KEY=
TENCENT_CAPTCHA_ID=
TENCENT_CAPTCHA_KEY=

# CKFinder 配置,无须修改;上传路径“/upfiles”在“public”目录下,要有可写权限
CKFINDER_LICENSE_NAME=example.com
CKFINDER_LICENSE_KEY=*T6V-*1**-A**6-*B**-*S**-E*3*-2**K
CKFINDER_UPLOAD_PATH=/upfiles

# 百度站长URL推送密钥配置,参考资料:https://ziyuan.baidu.com/college/courseinfo?id=267&page=4
BAIDU_ZZ_TOKEN=

腾讯云验证码

获取 API 密钥:https://console.cloud.tencent.com/cam/capi ,并配置到 TENCENT_SECRET_IDTENCENT_SECRET_KEY

开通验证码功能:https://console.cloud.tencent.com/captcha/graphical ,并配置到 TENCENT_CAPTCHA_IDTENCENT_CAPTCHA_KEY

百度站长 URL 推送

如果 .env 中配置了 BAIDU_ZZ_TOKEN,则结合指令 php artisan BaiduPushConsole 可以将新增或更新的文章推送给百度进行收录。

crontab 定时任务配置示例:

15 2 * * *  cd /home/www/blog && php artisan BaiduPushConsole >>storage/logs/baidu_zz.log

后台账号密码

在命令行模式下,执行 php artisan ResetPasswordConsole 将重置后台账号为一个随机密码。

关于 CKEditor

更改了代码高亮插件 codesnippet,即更新其中的 highlight.js 到最新版,且增加了代码行号插件。原始文件见 public/static/ckeditor/ckeditor.js.bak 及 public/static/ckeditor/plugins/codesnippet-bak 目录。

另外统一了编辑模器的 CSS 样式,做到跟前台样式统一,真正的所见即所得。

关于 CKFinder(可忽略)

把 PHP 代码迁移到了 app/Libs/CKFinder 目录,并修改了入口配置,见 public/static/ckfinder/config.js:

var config = {
    connectorPath: '/admin/ckfinder'
};
CKFinder.define( config );

Nginx 配置示例

server {
    listen 80;
    server_name yangdx.com www.yangdx.com;
    index  index.html index.php;
    root /home/www/blog/public;

    # 强制走www域名
    if ($host != 'www.yangdx.com') {
        rewrite ^/(.*) http://www.yangdx.com/$1 permanent;
    }

    # Lumen框架配置
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    # PHP配置
    location ~ .+\.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
    }

    # 静态资源文件缓存7天,且不记录日志
    location ~* \.(gif|jpg|jpeg|png|bmp|ico|swf|svg|eot|ttc|ttf|otf|woff|woff2|js|css)$ {
        expires 7d;
        access_log off;
    }

    # 禁止访问以“.”开头的资源(除了.well-known)
    location ~ /\.(?!well-known).* {
        deny all;
    }
}

整站演示

可以访问本人的博客,前台预览:https://www.yangdx.com/

Comments ( 0 )

Sign in for post a comment

About

基于 Lumen 框架开发的单用户博客系统 spread retract
GPL-3.0
Cancel

Releases

No release

Contributors

All

Activities

load more
can not load any more
1
https://gitee.com/yangrz/yangdx_blog_new.git
git@gitee.com:yangrz/yangdx_blog_new.git
yangrz
yangdx_blog_new
yangdx_blog_new
master

Search