Skip to content
WONGCW 網誌
  • 首頁
  • 論壇
  • 微博
  • 壁紙下載
  • 免費圖床
  • 視頻下載
  • 聊天室
  • SEO工具
  • 支援中心
  • 表格製作
  • More
    • 在線名片
    • 網頁搜索
    • 天氣預報
    • 二維碼生成器
    • WordPress 插件及主題下載
  • Search Icon

WONGCW 網誌

記錄生活經驗與點滴

leanote

leanote

2018-08-01 Comments 0 Comment

本文是关于Leanote安装/配置的一些问题 (English version), 关于Leanote的使用教程请参照 Leanote使用教程集.

在使用或安装Leanote的任何疑问, 请加Leanote官方QQ群 256076853 进行讨论 或 联系leanote@leanote.com.

欢迎为Leanote作贡献, 一个issue或在文档上一些改进都是对Leanote最好的支持!

目录:

  • 运行出错 “no reachable server”
  • 安装Leanote后运行出错
  • Leanote运行成功, 但不能登录
  • 修改Leanote运行端口
  • 如何绑定域名?
  • 为mongodb数据库添加用户
  • 为Leanote指定超级管理员帐户(admin用户)
  • 为Leanote配置https
  • Import of github.com/revel/revel/modules/testrunner failed
  • 开发版如何更新leanote?
  • 二进制版如何更新leanote?
  • 为什么需要 site.url
  • 客户端不能同步图片
  • 导出PDF配置 wkhtmltopdf
  • 不能通过IP访问

no reachable server

请确保数据库是否启动, 如果确定已启动 可以 尝试将 conf/app.conf db.host=localhost 改为 db.host=127.0.0.1

修改后请重新启动Leanote.

安装Leanote后运行出错

如果出现以下问题:

Go to /@tests to run the tests.
panic: auth fails

goroutine 1 [running]:
github.com/leanote/leanote/app/db.Init()
	/home/life/gopackage1/src/github.com/leanote/leanote/app/db/Mgo.go:64 +0x356

Leanote运行出错90%的原因是数据库的问题, 请检查:

  1. 数据库是否启动了?
  2. 如果数据库是以auth方式启动的, 请检查conf/app.conf是否配置了正确的数据库用户名和密码

注意, 默认的conf/app.conf 数据库配置如下:

# mongdb
db.host=localhost
db.port=27017
db.dbname=leanote # required
db.username= # if not exists, please leave it blank
db.password= # if not exists, please leave it blank
# or you can set the mongdb url for more complex needs the format is:
# mongodb://myuser:mypass@localhost:40001,otherhost:40001/mydb
# db.url=mongodb://root:root123@localhost:27017/leanote
db.urlEnv=${MONGODB_URL} # set url from env

即数据库名为leanote, 用户名和密码为空, 请检查是否正确.

Leanote运行成功, 但不能登录

原因: 数据库已停止运行, 请重新启动数据库和Leanote.

如果数据库在运行, 请重新启动Leanote.

修改Leanote运行端口

比如想以8080端口启动.

修改conf/app.conf:

http.port=8080
site.url=http://localhost:8080

请重启Leanote, 使用http://localhost:8080访问.

如何绑定域名?

比如想绑定域名a.com到你运行Leanote服务器, 你需要将leanote以80端口运行, 请修改conf/app.conf的如下配置:

http.port=80
site.url=http://a.com

然后启动Leanote. 当然你还需要将a.com绑定ip到Leanote服务器.

如果服务器上已有其它程序运行了80端口, 怎么办呢? 请google或百度下 “使用nginx分发请求到不同端口”.

为mongodb数据库添加用户

像mysql一样有root用户, mongodb初始是没有用户的, 这样很不安全, 所以要为leanote数据库新建一个用户来连接leanote数据库(注意, 并不是为leanote的表users里新建用户, 而是新建一个连接leanote数据库的用户, 类似mysql的root用户).

mognodb v2与v3创建用户命令有所不同

mongodb v2 创建用户如下:

# 首先切换到leanote数据库下
> use leanote;
# 添加一个用户root, 密码是abc123
> db.addUser("root", "abc123");
{
	"_id" : ObjectId("53688d1950cc1813efb9564c"),
	"user" : "root",
	"readOnly" : false,
	"pwd" : "e014bfea4a9c3c27ab34e50bd1ef0955"
}
# 测试下是否正确
> db.auth("root", "abc123");
1 # 返回1表示正确

mongodb v3 创建用户如下:

# 首先切换到leanote数据库下
> use leanote;
# 添加一个用户root, 密码是abc123
> db.createUser({
    user: 'root',
    pwd: 'abc123',
    roles: [{role: 'dbOwner', db: 'leanote'}]
});
# 测试下是否正确
> db.auth("root", "abc123");
1 # 返回1表示正确

用户添加好后重新运行下mongodb, 并开启权限验证. 在mongod的终端按ctrl+c即可退出mongodb.

启动mongodb:

$> mongod --dbpath /home/user1/data --auth

还要修改配置文件 : 修改 leanote/conf/app.conf:

db.host=localhost
db.port=27017
db.dbname=leanote # required
db.username=root # if not exists, please leave blank
db.password=abc123 # if not exists, please leave blank

为Leanote指定超级管理员帐户(admin用户)

Leanote默认超级管理员为admin, 且一旦不小心修改了username则不能改回. 此时可修改配置文件app.conf, 比如指定用户life为超级管理员, 修改或/添加一行:

adminUsername=life

为Leanote配置https

1. 生成SSL证书

可以在网上买一个, 或者自己做一个. 这里有一个shell脚本可以自动生成证书: (cert.sh)

#!/bin/sh

# create self-signed server certificate:

read -p "Enter your domain [www.example.com]: " DOMAIN

echo "Create server key..."

openssl genrsa -des3 -out $DOMAIN.key 1024

echo "Create server certificate signing request..."

SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$DOMAIN"

openssl req -new -subj $SUBJECT -key $DOMAIN.key -out $DOMAIN.csr

echo "Remove password..."

mv $DOMAIN.key $DOMAIN.origin.key
openssl rsa -in $DOMAIN.origin.key -out $DOMAIN.key

echo "Sign SSL certificate..."

openssl x509 -req -days 3650 -in $DOMAIN.csr -signkey $DOMAIN.key -out $DOMAIN.crt

假设得到了两个文件: a.com.crt, a.com.key

2. 配置Nginx

假设Leanote运行的端口是9000, 域名为a.com, 那么nginx.conf可以配置如下:

# 本配置只有http部分, 不全
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    
    upstream  a.com  {
        server   localhost:9000;
    }

    # http
    server
    {
        listen  80;
        server_name  a.com;
        
        # 强制https
        # 如果不需要, 请注释这一行rewrite
        rewrite ^/(.*) https://jp_linode2.com/$1 permanent;
        
        location / {
            proxy_pass        http://a.com;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
    }
    
    # https
    server
    {
        listen  443 ssl;
        server_name  a.com;
        ssl_certificate     /root/a.com.crt; # 修改路径, 到a.com.crt, 下同
        ssl_certificate_key /root/a.com.key;
        location / {
            proxy_pass        http://a.com;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
    }
}

Import of github.com/revel/revel/modules/testrunner failed

1.0版之前(beta版)会遇到这个问题, 1.0采用revel-0.12, 所以不会遇到这个问题.

Failed to load module.  Import of github.com/revel/revel/modules/testrunner failed: cannot find package "github.com/revel/revel/modules/testrunner" in any of:
	/Users/life/app/go1.4/src/github.com/revel/revel/modules/testrunner (from $GOROOT)
	/Users/life/Documents/Go/package_base/src/github.com/revel/revel/modules/testrunner (from $GOPATH)

revel 0.12 版配置不一样, 请修改app.conf

module.static=github.com/revel/modules/static		 	
module.testrunner=github.com/revel/modules/testrunner	 

开发版如何更新leanote?

可以使用git pull得到leanote上最新版本, 如果你已修改了leanote, 可以先fetch(推荐使用fetch的方式)最新到本地, 再与本地的合并. 如:

git fetch origin master:tmp # 得到远程最新版本, 别名为tmp
git diff tmp # 查看tmp与本地的不同
git merge tmp # 合并到本地

如果不能用git方式同步源码, 请下载 https://github.com/leanote/leanote

  1. 请先备份leanote之前的目录, 以防万一
  2. 将下载好的替换之前的leanote
  3. 将之前版本下的
    • /public/upload/ 目录
    • /files/ 目录
    • /conf/app.conf 移到新版下相应位置.

重启Leanote.

如果运行有问题, 如 “cannot find package “github.com/PuerkitoBio/goquery” in any of:…” 类似的信息, 原因是Leanote增加了新的依赖, 此时可以使用go get命令下载新包, 如下载”github.com/PuerkitoBio/goquery”

go get github.com/PuerkitoBio/goquery

或下载依赖包与源码全集: https://github.com/leanote/leanote-all

二进制版如何更新leanote?

请下载最新的leanote二进制版, 将之前版本下的

  • /public/upload/ 目录
  • /files/ 目录
  • /conf/app.conf

移到新版下相应位置.

在新版下运行leanote.

为什么需要 site.url

site.url是外网可访问的域名, 比如你可以配置为http://a.com, 但在运行leanote可以设端口为9000, 再通过Nginx转发到9000. 如果外网地址是80端口, 请不要填写http://a.com:80, 而只要为http://a.com即可!

site.url用于生成笔记内的图片/附件路径.

若使用nginx转发到https方式部署leanote,site.url需要配置成https://a.com ;否则在博客页面输出的css和js是以http链接形式展现在html中,高版本浏览器比如firefox会直接block掉这部分内容,从而页面显示不正常。更多信息请查看https://github.com/leanote/leanote/issues/228

客户端不能同步图片

请确保conf/app.conf的site.url和在客户端登录时填写的自建服务地址相同!

导出PDF配置 wkhtmltopdf

Leanote的PDF导出使用了wkhtmltopdf, 所以需要先安装wkhtmltopdf, 然后以管理员身份登录Leanote管理后台配置wkhtmltopdf路径.

下文讲解如何安装wkhtmltopdf.

源码编译安装

源码编译安装不会出现依赖的问题,wkhtmltopdf提供的编译脚本已经包含了相关依赖库的下载和安装过程,具体编译请查看wkhtmltopdf的源码包中的install.md文件。

二进制版本wkhtmltopdf安装 [推荐]

下载wkhtmltopdf,选择对应的版本,下载下来后通过rpm -ivh命令进行安装。

然后就会看到缺少一些依赖,所以要安装一些依赖库。

安装wkhtmltopdf的依赖包:

yum install -y fontconfig libX11 libXext libXrender xorg-x11-fonts-Type1 xorg-x11-fonts-75dpi libpng

安装完后再通过rpm -ivh命令安装wkhtmltopdf。

测试wkhtmltopdf

使用命令wkhtmltopdf http://google.com google.pdf,若没有问题则安装ok。若提示缺少库无法运行,则可以通过ldd wkhtmltopdf,查看缺少什么依赖库,然后再安装缺少的依赖库。

可能部分机器会遇到libpng提示缺少的问题,原因是直接安装的版本过高,某些版本wkhtmltopdf预编译版本依赖的libpng版本要低一点,通过yum provides *libpng12.so.0*,找到对应的版本,然后在进行安装yum install libpng12-1.2.50-6.el7.x86_64。

中文问题

在测试了将google页面导出成pdf,并检查pdf内容正常后,可以试一下使用命令wkhtmltopdf http://baidu.com baidu.pdf看一下中文页面是否能正常导出。若导出后中文内容为空白则是linux系统缺少中文字体。可以从windwows机器的windwows/fonts目录拷贝几个中文字体文件(微软雅黑之类的)到linux系统的/usr/share/fonts目录,然后再去测试下导出百度页面。

不能导出PDF?

如果导出PDF没有出现下载文件的提示, 证明导出出错, 请按照以下步骤检查:

  1. wkhtmltopdf安装是否成功? 请通过 wkhtmltopdf http://baidu.com baidu.pdf 检查
  2. wkhtmltopdf的路径在Leanote是否正确设置? 请复制你设置的路径到控制台导出试试, 比如 /usr/bin/wkhtmltopdf http://baidu.com baidu.pdf
  3. 导出还有问题? 请检查你的conf/app.conf中设置的site.url是否可以访问, Leanote导出PDF时会访问笔记链接, 这个链接的前缀就是 site.url

不能通过IP访问

2.6版默认绑定localhost, 不能通过ip访问Leanote,

请修改 app.conf

http.addr=0.0.0.0 # listen on all ip addresses

重启Leanote

分享此文:

  • 分享到 Twitter(在新視窗中開啟)
  • 按一下以分享至 Facebook(在新視窗中開啟)
  • 分享到 WhatsApp(在新視窗中開啟)
  • 按一下以分享到 Telegram(在新視窗中開啟)
  • 分享到 Pinterest(在新視窗中開啟)
  • 分享到 Reddit(在新視窗中開啟)
  • 按一下即可分享至 Skype(在新視窗中開啟)
  • 按一下即可以電子郵件傳送連結給朋友(在新視窗中開啟)
  • 點這裡列印(在新視窗中開啟)

相關


教學資源

Post navigation

PREVIOUS
免Root機去廣告!向網頁與App內廣告說再見
NEXT
centos安装MongoDB,并设置开机自启动

發表迴響 取消回覆

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料。

More results...

Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt
Filter by 分類
網站公告
Featured
限時免費
ESET NOD32
WINDOWS 10 &11 INSIDER PREVIEW
Windows 軟件下載
系統軟件
辦公軟件
圖像處理
影音媒體
網絡軟件
應用軟件
Mac 軟件下載
安卓軟件下載
網絡資訊
Mac資訊
Linux資訊
VPS資訊
NASA資訊
金融資訊
WhatsApp Stickers教學
WordPress資訊
WeChat資訊
PHP資訊
Plesk資訊
TensorFlow
教學資源
開源程序
網頁工具
SEO工具
醫療健康
旅遊及消閒
其他資訊
Content from
Content to
2018 年 8 月
一 二 三 四 五 六 日
 12345
6789101112
13141516171819
20212223242526
2728293031  
« 7 月   9 月 »

分類

  • 網站公告
  • 限時免費
  • ESET NOD32
  • WINDOWS 10 &11 INSIDER PREVIEW
  • Windows 軟件下載
  • 系統軟件
  • 辦公軟件
  • 圖像處理
  • 影音媒體
  • 網絡軟件
  • 應用軟件
  • Mac 軟件下載
  • 安卓軟件下載
  • 網絡資訊
  • Mac資訊
  • Linux資訊
  • VPS資訊
  • NASA資訊
  • WhatsApp Stickers教學
  • WordPress資訊
  • WeChat資訊
  • PHP資訊
  • Plesk資訊
  • TensorFlow
  • 教學資源
  • 開源程序
  • 網頁工具
  • SEO工具
  • 醫療健康
  • 旅遊及消閒
  • 其他資訊

彙整

近期文章

  • A Guide to Overcoming Your Incontinence Problem as an Adult 2023-02-04
  • 美國聯邦貿易委員會不懼首戰失利準備對亞馬遜提起可能的反壟斷訴訟 2023-02-04
  • 科學家發現機械刺激可用於強化肌肉 2023-02-04
  • 報導稱巴基斯坦監管機構已經封鎖了維基百科的訪問 2023-02-04
  • 歐盟已經就動視暴雪的交易向微軟發出了正式警告 2023-02-04
  • SUCOM網絡使偏遠地區送貨的無人機有了更可靠的蜂窩通訊能力 2023-02-04
  • 馬斯克表示Twitter將在今天開始與創作者分享廣告收入 2023-02-04
  • 科學家垂直堆疊子像素帶來更清晰的microLED顯示器 2023-02-04
  • 2022年全球智能手機出貨量為2013年以來最低蘋果獨得85%營業利潤 2023-02-04
  • 哥倫比亞一位法官剛剛使用ChatGPT做出了一項法庭裁決 2023-02-04

熱門文章與頁面︰

  • DP vs HDMI 誰才是遊戲玩家最佳選擇?
  • ESET NOD32 LICENSE KEY (UPDATED 2023-01-17)
  • Explorer Patcher:讓Windows 11恢復Windows 10的行為特徵
  • 打車叫到特斯拉不會開門很尷尬?官方介紹開關門方法
  • ESET NOD32 LICENSE KEY (UPDATED 2022-01-01)
  • 盜版Windows 7還能免費升級Windows 10嗎?
  • Windows及OFFICE激活密鑰+電話激活教程–自用
  • z-sms – 在線免費云短信臨時手機號接碼平台網頁版
  • 百度雲盤、藍奏雲、微雲提取碼秘鑰查詢工具
  • 天翼網盤免登陸高速下載,直鏈解析不限速

投遞稿件

歡迎各界人士投遞稿件到admin@wongcw.com

請提供以下資料:

1.你的名字

2.你的電郵

3.分類目錄

4.文章標題

5.文章摘要

6.文章內容

7.文章來源

 

聯繫我們

查詢,投稿,商務合作:
​admin@wongcw.com
​技術支援:
​support@wongcw.com
​客户服務:
​cs@wongcw.com

QQ群:833641851

快帆

MALUS

極度掃描

DMCA.com Protection Status

WONGCW 網誌

  • 免責聲明
  • 捐助我們
  • ThemeNcode PDF Viewer
  • ThemeNcode PDF Viewer SC
  • Events

服務器提供

本站使用之服務器由ikoula提供。

聯繫我們

查詢,投稿,商務合作:
​admin@wongcw.com
​技術支援:
​support@wongcw.com
​客户服務:
​cs@wongcw.com

QQ群:833641851

© 2023   All Rights Reserved.
X