Ubuntu 16.04 时区设置
dpkg-reconfigure tzdata
选择 Asia-->Shanghai
dpkg-reconfigure tzdata
选择 Asia-->Shanghai
大致流程请看这里已经非常详细了,感谢原博主的教程和资源。
这里介绍安装和使用中遇到的几个问题
如果你的服务器只有 1G 内存,使用默认配置是启动不了的,因为默认配置的内存占用比较大。
首先要修改配置
vi /opt/atlassian/confluence/bin/setenv.sh
搜索 CATALINA_OPTS
找到
CATALINA_OPTS="$CATALINA_OPTS -Xms1024m -Xmx1024m -XX:MaxPermSize=256m -XX:+UseG1GC"
-Xms 表示最低内存限制 -Xmx 表示最大内存限制。改成
CATALINA_OPTS="$CATALINA_OPTS -Xms256m -Xmx512m -XX:MaxPermSize=256m -XX:+UseG1GC"
就可以勉强跑起来了。建议 1G 内存的服务器就不要装了,跑不动。。
对于这个问题的官方回复请看这里
Ubuntu 16.04 安装的 mysql 版本是 5.7,与这个 confluence 版本不兼容,可以在这里下载兼容 mysql 5.7 的 jar 包,替换 mysql-connector-java-5.1.39-bin.jar 就可以啦!
对于这个问题的官方回复请看这里
要在默认连接字符串后面加上这个:&useUnicode=true&characterEncoding=utf8&autoReconnect=true
否则中文会乱码
使用 admin 账号在网站的后台管理中修改 baseUrl 并没有什么卵用,点到应用商店还是会提示 baseUrl 不匹配,需要在 /opt/atlassian/confluence/conf/server.xml 中做相应的修改。如果使用 nginx 或者 apache 做代理的话,还需要修改几处地方,具体修改方式查看这里和这里
之前搞的免费证书还没过期,但是被标记为不安全了。
今天下午抽空把网站换了 Let's Encrypt,还是这个靠谱。
记录下几个使用中要注意的点,这里以 Ubuntu + Nginx 为例
可以在这里查看自己使用的系统和服务器软件对应的安装方式
会看到如下提示
How would you like to authenticate with the ACME CA?
-------------------------------------------------------------------------------
1: Place files in webroot directory (webroot)
2: Spin up a temporary webserver (standalone)
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
这里会让我们选择 1 还是 2 强烈建议选择 1
因为选择 2 之后 certbot 会在 80 端口临时启动一个 webserver,但是我们的 nginx/apache 往往会占用 80 端口,需要停掉服务才可以继续,一次也就算了,每三个月要续期一次,续期的时候还要停止服务,不太合适。。
所以我们选 1
采用 1 以后需要指定一个文件夹用来存放认证文件,需要提前为要加 https 的域名配置好 nginx,certbot 会访问这个文件来确认这个域名绑定到了当前服务器。
设置方法:
假如我们指定的认证文件存放目录为 /data0/html/certbot
那么就在 nginx 中做如下配置
location '/.well-known/acme-challenge' {
root /data0/html/certbot;
}
这段配置可以写在另外的文件中,用到时 include 进来。
之后按照 certbot 的提示操作,看到 Congratulations! 就说明证书生成成功了,记录下证书存放的位置,一会配置 nginx 要用到。
找到网站的 nginx 配置文件加入一个 server {} 配置如下
server {
listen 443;
...
ssl on;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
...
}
这里省略掉了与 80 端口相同的配置项,只需将端口改为 443,加入以 ssl 开头的 3 行配置就搞定啦!
当然 example.com 要替换成我们自己域名,这个可以说是最简配置了
更多详细说明可以看这里
每两个月更新一次并重启 nginx
0 0 1 /2 /usr/bin/certbot renew >> /var/log/certbot.log && /usr/sbin/nginx -s reload
本来配置好了,然后自己清理了一下之前的配置,搞出问题了。。。
之前有个 listen 80 default_server 这样的配置 我又加了个 listen 443 default_server 重启 nginx 之后就不能访问了 会提示 ERR_CONNECTION_CLOSED 或者 ERR_SSL_PROTOCOL_ERROR。。。查了半天才解决这个问题,自己给自己挖坑,醉了。。不过好在涨姿势了。
listen 443 default_server 这种写法是不对的。
由于是泛解析,任意子域名都能访问到网站,https 建立连接是在判断 server_name 之前的,所以采用 https 的访问是无法统一处理的,目前采用的方式是:
在解析的域名中加一条配置
if ($host != 'blog.jiayx.net' ) {
return 301 https://blog.jiayx.net$request_uri;
}
nginx 在执行 !-e $request_filename
或者 try_files $uri $uri/ /index.php$uri
的时候如果文件所在的文件夹没有执行权限会导致 nginx 认为文件不存在,遇到这种问题的时候,先查看文件夹权限。尤其是从别的地方下载的文件或者压缩包里解压出来的文件
为什么 FAT32 格式的 U 盘无法存放大于 4G 的文件?
为什么 32 cpu 通常只支持 4G 内存?
所有的计算机术语中,所有的“位”都是指 bit 就是一个二进制位(即 0 或 1)
1bit = 1位
1B(byte) = 1字节 = 8bit
1KB = 1024B
1MB = 1024KB = 1024 * 1024B
1GB = 1024MB
1TB = 1024GB
这个是硬盘分区格式,32 意思是采用了 32 位(即32个0/1)的文件分配表
也就是说采用 32 个 二进制位 来计数文件的 字节数
32个 0/1 所能记录最大的正整数为 2^32 也就是说能记录的最大文件大小为 2^32byte(字节)这数正好是 4G,所以采用 FAT32 格式的 U 盘无法存放大于 4G 的文件
这方面的文献搜集的不够全面和专业,先简单列出,后续再补充