Nginx 反向代理nextcloud https配置

由于vps的配置比较低,使用nextcloud比较吃资源,就把nextcloud从腾讯轻量迁移到了另一个配置稍微好点的vps上面。
不过之前都是使用秋水的lamp一键脚本,apache有点吃内存,所以就自己花了几天时间学习编译nginx,自己做配置。填过几个坑后nextcloud终于由apache成功迁移到了nginx,并且没有使用一键脚本搭建web环境。

但是nextcloud的vps网络情况现在变的有点差,所以就用了腾讯云轻量去反代,开始时,腾讯云轻量的web环境是apache,随便配置一下就能反代成功。后面又把腾讯云轻量的web环境也换成了Nginx,但是在反代后chrome上面出现了ERR_HTTP2_PROTOCOL_ERROR为了解决这个问题折腾了好多啊,同样的配置在火狐浏览器下面反向代理后没有问题,但是在chrome下就是ERR_HTTP2_PROTOCOL_ERROR。找了好久也没有发现什么办法解决,最后好像是原站点和反代站点配置都使用了HTTP2问题解决。

Debian 10升級內核到最新

這里去找到最新的內核版本,比如現在最新的是5.10.1
根據使用平臺來下載這幾個文件,以X86_64位系統為例

wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10.1/amd64/linux-headers-5.10.1-051001-generic_5.10.1-051001.202012142031_amd64.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10.1/amd64/linux-headers-5.10.1-051001_5.10.1-051001.202012142031_all.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10.1/amd64/linux-image-unsigned-5.10.1-051001-generic_5.10.1-051001.202012142031_amd64.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.10.1/amd64/linux-modules-5.10.1-051001-generic_5.10.1-051001.202012142031_amd64.deb

Debian10 編譯NGINX

安裝部份依賴。
更新軟件

apt update && apt upgrade -y
apt install build-depgcc
apt install build-essential
apt install -y perl libperl-dev libgd3 libgd-dev libgeoip1 libgeoip-dev geoip-bin libxml2 libxml2-dev libxslt1.1 libxslt1-dev libsctp-dev

根據需求下載并解壓源碼,注意版本,可以更換成最新版本號,這是我編譯時的最新版本。
其中ngx-fancyindex是一個目錄索引的模塊,可以讓目錄索引介面更好看,並且有多重主題可用。

wget https://nginx.org/download/nginx-1.20.2.tar.gz && tar zxvf nginx-1.20.2.tar.gz
//wget https://ftp.pcre.org/pub/pcre/pcre-8.45.tar.gz && tar xzvf pcre-8.45.tar.gz//(下載地址已經改變了,請到https://pcre.org/找下載鏈接)
wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz && tar xzvf openssl-1.1.1l.tar.gz
//wget https://github.com/aperezdc/ngx-fancyindex/releases/download/v0.5.2/ngx-fancyindex-0.5.2.tar.xz && tar xzvf ngx-fancyindex-0.5.2.tar.xz 
git clone https://github.com/aperezdc/ngx-fancyindex.git
wget https://www.zlib.net/zlib-1.2.11.tar.gz && tar xzvf zlib-1.2.11.tar.gz
wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.9.1/gperftools-2.9.1.tar.gz && tar xzvf gperftools-2.9.1.tar.gz

下载ngx_brotli
git clone https://github.com/google/ngx_brotli
cd ngx_brotli && git submodule update --init

Nginx Typecho伪静态,以及启用https后台页面异常,登陆后页面空白解决方法

自己弄LNMP环境真是到处是坑,最近折腾了两天终于把LNMP环境弄好了,刚开始一直无法解析php文件,打开网页就是下载index.php,不知道是哪里没有配置好。后面重新编译nginx,安装php以及MYsql后算是好了。到配置Typecho时又发现主页打开正常,然后点击其他链接就是404,写了伪静态规则也是不行,最后找到了一个伪静态规则,就是下面的配置算是正常了。但是打开后台界面时页面又是异常的,输入账号密码后登陆,就出现页面空白,真是一个问题接着一个问题,后面找到了下面的解决方法,原来要在config.inc.php里面配置启用https。但是我用apache的时候就没有遇到这个问题。。。。
下面是解决方法。

编辑Typecho站点根目录下的文件config.inc.php加入下面一行配置
解决方法来源 https://github.com/typecho/typecho/issues/797

define('__TYPECHO_SECURE__',true);

從Wordpress遷移到Typecho全部完成

今天把圖片和站點全部分離完成,之前剛用Wordpress的時候圖片是直接上傳到Wordpress的圖片目錄,後面搭建了lychee這個相冊,新的文章就把圖片放到了相冊,中間有手動把一些文章的圖片移到相冊,不過還有一些文章的圖片沒有移動。這次的平臺遷移前期也只是把圖片移到Typecho的目錄下。

今天趁著沒事兒,把Typecho的目錄下的圖片也都移到了搭建的lychee相冊下。並把之前Wordpress生成的縮略圖刪除,但是當時插入圖片時有些插入的是縮略圖,導致有些圖片無法鏈接,又一篇一篇文章的檢查圖片鏈接,把縮略圖替換成原圖片。

至此終於把圖片和站點完全分離。不過有些文章的圖片可能有錯誤,如果讀者有發現請及時留言,看到後我會及時更正。

另外也在側邊欄加上了微信打賞二維碼,如果感覺文章對你有幫助,並且願意支持一下的話可以憑心情打賞一下。打賞的費用會用在服務器續費上。