找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 17283|回复: 125

[N1盒子] 【DOCKER】V_P_N/S_S/FRPS/LNMPP/SHOWDOC/内外映射【VPS+N1】

 火.. [复制链接]
本帖最后由 myheartbeyond 于 2019-8-24 11:36 编辑

LNMPP=(VPS/N1)linux nginx mariadb php phpmyadmin
内外映射=(VPS)www-->(VPS)frps:8000-->(N1)frpc:8000


1楼,正贴,VPS各功能配置,以WORDPRESS为例建站
2楼,N1配置
3楼,TYPECHO安装(解决分离部署LNMP所产生的Database Query Error);showdoc安装


分页介绍

1 分页介绍
2 BBR
3 升级内核
4 部署SS
5 部署P_P_T_P_V_P_N
6 部署FRPS
7 部署LNMP
8 创建NGINX配置文件
9 创建NGINX默认配置模板文件
10 创建NGINX中调度PHP的配置文件
11 创建NGINX主程序配置文件nginx.conf
12 创建NGINX虚拟主机配置文件,80/443同时访问,参考并修改为自定义域名
13 创建NGINX虚拟主机配置文件,80通过301转向443,www默认访问FRPS映射的远端服务器,远端服务器虚拟主机配置文件
14 创建NGINX开启SSL相关文件及配置文件,创建数据库
15 前台后台部署网站源码,安装PHP扩展,提高WP上传文件大小
16 远端FRPC配置,总结,参考文章

目标效果
浏览器输入访问公网IP,不跳转任何虚拟域名,同IP可配置多个域名,不会影响彼此。
浏览器输入访问mydomain.com,在VPS上,进行301跳转,转向VPS的443,进行安全高速访问。
浏览器输入访问www.mydomain.com,在VPS上,进行精确匹配后,交给FRPS进程进行处理。
FRPS进程同后端服务器(N1)存在数据关联,直接由后端服务器(N1)响应请求。



上面提到的多是VPS上的配置。
看到有说看不太懂的
我总结一下:
我需要全球转悠,就需要一架私人飞机,所以有了SS,但是SS如果是小飞机,就太慢了,我需要大飞机,也就是要快,所以有了BBR。SS+BBR实现了我全球转悠的梦想

但是,我有时需要去存巨款,就不能走普通的方式,我的目标,就是点到点私人化的,不需要外界干扰,所以才P_P_T_P_V_P_N这样的专车,只有这样的老司机我才放心
上面只是满足了我安全出行是本文的目的是建站,我要为建站做点事,所以才有了FRP这个向导,FRPS就像是向导服务站,注册的各种服务,就像是去往各景区的不同向导,而到了景区,还需要当地的地接向导,也就是FRPC。当别人来找我时,只要找到FRPS,再由FRPS来告诉对方我在哪,就可以了。至于对方按FRPS提供的方式,能不能找得到我,那就看FRPC的了,FRPC正好也在上班了(配置了),就能继续后续服务,没在(没配置好)那就没戏(显示那个英文什么POWERED BY FRP之类的页面,应该就是FRPC没在)。那么我想实现更深入的访问,在VPS上,也就要有FRPS的配置,在远端(N1)需要有FPRC的配置


我既然给FRPS租了一个场地,叫VPS,如果在VPS中FRPS,是不是很亏,所以我就把大家都请来了。SS、P_P_T_P_V_P_N、FRPS,当然还有LNMP。
LNMP在这里就好比是一个收银台,你想要店内东西(主域访问),LNMP直接给你,很享受,很快速,你想要店外(N1)的东西,比如子域
WWW访问,LNMP发现此访问是需要交给
FRPS的,那么最终就由它来帮你处理了。


可是为什么要有内核升级?因为CENTOS的DOCKER,对内核版本有要求,什么OVERLAY的模式云云的,反正就是这样了。如果用DEBIAN/UBUNTU,我才不动内核呢。毕竟我还是爱好于CENTOS。




呃,可能更晕了。我觉得是。晕了就洗洗睡吧。



隐藏内容是:我就隐藏一下,没什么,所有的高亮反色,都是要执行的。
我就隐藏一下,没什么,所有的高亮反色,都是要执行的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
 楼主| | 显示全部楼层

N1/LNMP

本帖最后由 myheartbeyond 于 2019-8-13 12:53 编辑

这里将N1搭建LNMP配置贴出来。
这是早期的总结,目标就是搭建成功,所以可以看到,nginx.conf,没有server的配置,访问IP+端口,就是默认的虚拟主机配置的站点,应该没办法多域名。N1的配置就没想过要多域名。多域名参考上面正贴中的配置挪过来就可以了。
N1启用LNMP一共三步
装程序的docker版本
配置程序的数据和配置目录
带上数据和配置目录去启动程序

就这样,就可以了。

我发现在N1上跑WP,在PHP处理时,PHP会跑到200%多,所以,N1上的PHP会对CPU有一个限制,我是限制为70%,你们可以更改。。
另外,后续也许会考虑加上memcached这样的PHP扩展,看看会不会缓解这样的问题。
为什么会想要这样,因为之前WP给我在仪表盘中,新闻那个位置,报了一个RSS的什么错误,今天刚才我又看了一下,竟然没有了,真是奇怪了。
同样的,N1跑WP,也会提示这个组件问题。


如何解决上述问题,应该和正贴中的操作一样吧,不一样再说了。

# 使用DOCKER搭建LNMP服务
## 拉取镜像

docker pull nginx
docker pull mariadb
docker pull php:fpm
docker pull biarms/phpmyadmin

## 准备配置文件(可选,可以先起服务再参考此处完善配置)
### 模块文件

set_worker.conf
worker_processes auto;
worker_cpu_affinity auto;
worker_rlimit_nofile 1024;

set_event.conf
events {
        use epoll;
        worker_connections 1024;        
        multi_accept off;
        accept_mutex off;        
}

set_client.conf
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;

set_sendfile.conf
sendfile on;
sendfile_max_chunk 512k;

set_tcp.conf
tcp_nodelay on;
tcp_nopush on;

set_gzip.conf
gzip on;
gzip_min_length  1k;
gzip_buffers     4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
gzip_proxied   expired no-cache no-store private auth;
gzip_disable   "MSIE [1-6]\.";
gzip_vary on;

set_fastcgi.conf
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;        
fastcgi_read_timeout 300;        
fastcgi_buffer_size 64k;        
fastcgi_buffers 4 64k;        
fastcgi_busy_buffers_size 128k;        
fastcgi_temp_file_write_size 256k;

fastcgi.conf
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;
fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;
fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/";

fastcgi_params
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;
fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  REQUEST_SCHEME     $scheme;
fastcgi_param  HTTPS              $https if_not_empty;
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;
# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

scgi_params
scgi_param  REQUEST_METHOD     $request_method;
scgi_param  REQUEST_URI        $request_uri;
scgi_param  QUERY_STRING       $query_string;
scgi_param  CONTENT_TYPE       $content_type;
scgi_param  DOCUMENT_URI       $document_uri;
scgi_param  DOCUMENT_ROOT      $document_root;
scgi_param  SCGI               1;
scgi_param  SERVER_PROTOCOL    $server_protocol;
scgi_param  REQUEST_SCHEME     $scheme;
scgi_param  HTTPS              $https if_not_empty;
scgi_param  REMOTE_ADDR        $remote_addr;
scgi_param  REMOTE_PORT        $remote_port;
scgi_param  SERVER_PORT        $server_port;
scgi_param  SERVER_NAME        $server_name;

uwsgi_params
uwsgi_param  QUERY_STRING       $query_string;
uwsgi_param  REQUEST_METHOD     $request_method;
uwsgi_param  CONTENT_TYPE       $content_type;
uwsgi_param  CONTENT_LENGTH     $content_length;
uwsgi_param  REQUEST_URI        $request_uri;
uwsgi_param  PATH_INFO          $document_uri;
uwsgi_param  DOCUMENT_ROOT      $document_root;
uwsgi_param  SERVER_PROTOCOL    $server_protocol;
uwsgi_param  REQUEST_SCHEME     $scheme;
uwsgi_param  HTTPS              $https if_not_empty;
uwsgi_param  REMOTE_ADDR        $remote_addr;
uwsgi_param  REMOTE_PORT        $remote_port;
uwsgi_param  SERVER_PORT        $server_port;
uwsgi_param  SERVER_NAME        $server_name;

### 多媒体文件
mime.types
types {
    text/html                                        html htm shtml;
    text/css                                         css;
    text/xml                                         xml;
    image/gif                                        gif;
    image/jpeg                                       jpeg jpg;
    application/javascript                           js;
    application/atom+xml                             atom;
    application/rss+xml                              rss;
    text/mathml                                      mml;
    text/plain                                       txt;
    text/vnd.sun.j2me.app-descriptor                 jad;
    text/vnd.wap.wml                                 wml;
    text/x-component                                 htc;
    image/png                                        png;
    image/svg+xml                                    svg svgz;
    image/tiff                                       tif tiff;
    image/vnd.wap.wbmp                               wbmp;
    image/webp                                       webp;
    image/x-icon                                     ico;
    image/x-jng                                      jng;
    image/x-ms-bmp                                   bmp;
    font/woff                                        woff;
    font/woff2                                       woff2;
    application/java-archive                         jar war ear;
    application/json                                 json;
    application/mac-binhex40                         hqx;
    application/msword                               doc;
    application/pdf                                  pdf;
    application/postscript                           ps eps ai;
    application/rtf                                  rtf;
    application/vnd.apple.mpegurl                    m3u8;
    application/vnd.google-earth.kml+xml             kml;
    application/vnd.google-earth.kmz                 kmz;
    application/vnd.ms-excel                         xls;
    application/vnd.ms-fontobject                    eot;
    application/vnd.ms-powerpoint                    ppt;
    application/vnd.oasis.opendocument.graphics      odg;
    application/vnd.oasis.opendocument.presentation  odp;
    application/vnd.oasis.opendocument.spreadsheet   ods;
    application/vnd.oasis.opendocument.text          odt;
    application/vnd.openxmlformats-officedocument.presentationml.presentation
                                                     pptx;
    application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
                                                     xlsx;
    application/vnd.openxmlformats-officedocument.wordprocessingml.document
                                                     docx;
    application/vnd.wap.wmlc                         wmlc;
    application/x-7z-compressed                      7z;
    application/x-cocoa                              cco;
    application/x-java-archive-diff                  jardiff;
    application/x-java-jnlp-file                     jnlp;
    application/x-makeself                           run;
    application/x-perl                               pl pm;
    application/x-pilot                              prc pdb;
    application/x-rar-compressed                     rar;
    application/x-redhat-package-manager             rpm;
    application/x-sea                                sea;
    application/x-shockwave-flash                    swf;
    application/x-stuffit                            sit;
    application/x-tcl                                tcl tk;
    application/x-x509-ca-cert                       der pem crt;
    application/x-xpinstall                          xpi;
    application/xhtml+xml                            xhtml;
    application/xspf+xml                             xspf;
    application/zip                                  zip;
    application/octet-stream                         bin exe dll;
    application/octet-stream                         deb;
    application/octet-stream                         dmg;
    application/octet-stream                         iso img;
    application/octet-stream                         msi msp msm;
    audio/midi                                       mid midi kar;
    audio/mpeg                                       mp3;
    audio/ogg                                        ogg;
    audio/x-m4a                                      m4a;
    audio/x-realaudio                                ra;
    video/3gpp                                       3gpp 3gp;
    video/mp2t                                       ts;
    video/mp4                                        mp4;
    video/mpeg                                       mpeg mpg;
    video/quicktime                                  mov;
    video/webm                                       webm;
    video/x-flv                                      flv;
    video/x-m4v                                      m4v;
    video/x-mng                                      mng;
    video/x-ms-asf                                   asx asf;
    video/x-ms-wmv                                   wmv;
    video/x-msvideo                                  avi;
}

### 字体文件
win-utf
# This map is not a full windows-1251 <> utf8 map: it does not
# contain Serbian and Macedonian letters.  If you need a full map,
# use contrib/unicode2nginx/win-utf map instead.
charset_map  windows-1251  utf-8 {
    82  E2809A ; # single low-9 quotation mark
    84  E2809E ; # double low-9 quotation mark
    85  E280A6 ; # ellipsis
    86  E280A0 ; # dagger
    87  E280A1 ; # double dagger
    88  E282AC ; # euro
    89  E280B0 ; # per mille
    91  E28098 ; # left single quotation mark
    92  E28099 ; # right single quotation mark
    93  E2809C ; # left double quotation mark
    94  E2809D ; # right double quotation mark
    95  E280A2 ; # bullet
    96  E28093 ; # en dash
    97  E28094 ; # em dash
    99  E284A2 ; # trade mark sign
    A0  C2A0 ;   #  
    A1  D18E ;   # capital Byelorussian short U
    A2  D19E ;   # small Byelorussian short u
    A4  C2A4 ;   # currency sign
    A5  D290 ;   # capital Ukrainian soft G
    A6  C2A6 ;   # borken bar
    A7  C2A7 ;   # section sign
    A8  D081 ;   # capital YO
    A9  C2A9 ;   # (C)
    AA  D084 ;   # capital Ukrainian YE
    AB  C2AB ;   # left-pointing double angle quotation mark
    AC  C2AC ;   # not sign
    AD  C2AD ;   # soft hypen
    AE  C2AE ;   # (R)
    AF  D087 ;   # capital Ukrainian YI
    B0  C2B0 ;   # °
    B1  C2B1 ;   # plus-minus sign
    B2  D086 ;   # capital Ukrainian I
    B3  D196 ;   # small Ukrainian i
    B4  D291 ;   # small Ukrainian soft g
    B5  C2B5 ;   # micro sign
    B6  C2B6 ;   # pilcrow sign
    B7  C2B7 ;   # ·
    B8  D191 ;   # small yo
    B9  E28496 ; # numero sign
    BA  D194 ;   # small Ukrainian ye
    BB  C2BB ;   # right-pointing double angle quotation mark
    BF  D197 ;   # small Ukrainian yi
    C0  D090 ;   # capital A
    C1  D091 ;   # capital B
    C2  D092 ;   # capital V
    C3  D093 ;   # capital G
    C4  D094 ;   # capital D
    C5  D095 ;   # capital YE
    C6  D096 ;   # capital ZH
    C7  D097 ;   # capital Z
    C8  D098 ;   # capital I
    C9  D099 ;   # capital J
    CA  D09A ;   # capital K
    CB  D09B ;   # capital L
    CC  D09C ;   # capital M
    CD  D09D ;   # capital N
    CE  D09E ;   # capital O
    CF  D09F ;   # capital P
    D0  D0A0 ;   # capital R
    D1  D0A1 ;   # capital S
    D2  D0A2 ;   # capital T
    D3  D0A3 ;   # capital U
    D4  D0A4 ;   # capital F
    D5  D0A5 ;   # capital KH
    D6  D0A6 ;   # capital TS
    D7  D0A7 ;   # capital CH
    D8  D0A8 ;   # capital SH
    D9  D0A9 ;   # capital SHCH
    DA  D0AA ;   # capital hard sign
    DB  D0AB ;   # capital Y
    DC  D0AC ;   # capital soft sign
    DD  D0AD ;   # capital E
    DE  D0AE ;   # capital YU
    DF  D0AF ;   # capital YA
    E0  D0B0 ;   # small a
    E1  D0B1 ;   # small b
    E2  D0B2 ;   # small v
    E3  D0B3 ;   # small g
    E4  D0B4 ;   # small d
    E5  D0B5 ;   # small ye
    E6  D0B6 ;   # small zh
    E7  D0B7 ;   # small z
    E8  D0B8 ;   # small i
    E9  D0B9 ;   # small j
    EA  D0BA ;   # small k
    EB  D0BB ;   # small l
    EC  D0BC ;   # small m
    ED  D0BD ;   # small n
    EE  D0BE ;   # small o
    EF  D0BF ;   # small p
    F0  D180 ;   # small r
    F1  D181 ;   # small s
    F2  D182 ;   # small t
    F3  D183 ;   # small u
    F4  D184 ;   # small f
    F5  D185 ;   # small kh
    F6  D186 ;   # small ts
    F7  D187 ;   # small ch
    F8  D188 ;   # small sh
    F9  D189 ;   # small shch
    FA  D18A ;   # small hard sign
    FB  D18B ;   # small y
    FC  D18C ;   # small soft sign
    FD  D18D ;   # small e
    FE  D18E ;   # small yu
    FF  D18F ;   # small ya
}

koi-utf
# This map is not a full koi8-r <> utf8 map: it does not contain
# box-drawing and some other characters.  Besides this map contains
# several koi8-u and Byelorussian letters which are not in koi8-r.
# If you need a full and standard map, use contrib/unicode2nginx/koi-utf
# map instead.
charset_map  koi8-r  utf-8 {
    80  E282AC ; # euro
    95  E280A2 ; # bullet
    9A  C2A0 ;   #  
    9E  C2B7 ;   # ·
    A3  D191 ;   # small yo
    A4  D194 ;   # small Ukrainian ye
    A6  D196 ;   # small Ukrainian i
    A7  D197 ;   # small Ukrainian yi
    AD  D291 ;   # small Ukrainian soft g
    AE  D19E ;   # small Byelorussian short u
    B0  C2B0 ;   # °
    B3  D081 ;   # capital YO
    B4  D084 ;   # capital Ukrainian YE
    B6  D086 ;   # capital Ukrainian I
    B7  D087 ;   # capital Ukrainian YI
    B9  E28496 ; # numero sign
    BD  D290 ;   # capital Ukrainian soft G
    BE  D18E ;   # capital Byelorussian short U
    BF  C2A9 ;   # (C)
    C0  D18E ;   # small yu
    C1  D0B0 ;   # small a
    C2  D0B1 ;   # small b
    C3  D186 ;   # small ts
    C4  D0B4 ;   # small d
    C5  D0B5 ;   # small ye
    C6  D184 ;   # small f
    C7  D0B3 ;   # small g
    C8  D185 ;   # small kh
    C9  D0B8 ;   # small i
    CA  D0B9 ;   # small j
    CB  D0BA ;   # small k
    CC  D0BB ;   # small l
    CD  D0BC ;   # small m
    CE  D0BD ;   # small n
    CF  D0BE ;   # small o
    D0  D0BF ;   # small p
    D1  D18F ;   # small ya
    D2  D180 ;   # small r
    D3  D181 ;   # small s
    D4  D182 ;   # small t
    D5  D183 ;   # small u
    D6  D0B6 ;   # small zh
    D7  D0B2 ;   # small v
    D8  D18C ;   # small soft sign
    D9  D18B ;   # small y
    DA  D0B7 ;   # small z
    DB  D188 ;   # small sh
    DC  D18D ;   # small e
    DD  D189 ;   # small shch
    DE  D187 ;   # small ch
    DF  D18A ;   # small hard sign
    E0  D0AE ;   # capital YU
    E1  D090 ;   # capital A
    E2  D091 ;   # capital B
    E3  D0A6 ;   # capital TS
    E4  D094 ;   # capital D
    E5  D095 ;   # capital YE
    E6  D0A4 ;   # capital F
    E7  D093 ;   # capital G
    E8  D0A5 ;   # capital KH
    E9  D098 ;   # capital I
    EA  D099 ;   # capital J
    EB  D09A ;   # capital K
    EC  D09B ;   # capital L
    ED  D09C ;   # capital M
    EE  D09D ;   # capital N
    EF  D09E ;   # capital O
    F0  D09F ;   # capital P
    F1  D0AF ;   # capital YA
    F2  D0A0 ;   # capital R
    F3  D0A1 ;   # capital S
    F4  D0A2 ;   # capital T
    F5  D0A3 ;   # capital U
    F6  D096 ;   # capital ZH
    F7  D092 ;   # capital V
    F8  D0AC ;   # capital soft sign
    F9  D0AB ;   # capital Y
    FA  D097 ;   # capital Z
    FB  D0A8 ;   # capital SH
    FC  D0AD ;   # capital E
    FD  D0A9 ;   # capital SHCH
    FE  D0A7 ;   # capital CH
    FF  D0AA ;   # capital hard sign
}

koi-win
charset_map  koi8-r  windows-1251 {
    80  88 ; # euro
    95  95 ; # bullet
    9A  A0 ; #  
    9E  B7 ; # ·
    A3  B8 ; # small yo
    A4  BA ; # small Ukrainian ye
    A6  B3 ; # small Ukrainian i
    A7  BF ; # small Ukrainian yi
    AD  B4 ; # small Ukrainian soft g
    AE  A2 ; # small Byelorussian short u
    B0  B0 ; # °
    B3  A8 ; # capital YO
    B4  AA ; # capital Ukrainian YE
    B6  B2 ; # capital Ukrainian I
    B7  AF ; # capital Ukrainian YI
    B9  B9 ; # numero sign
    BD  A5 ; # capital Ukrainian soft G
    BE  A1 ; # capital Byelorussian short U
    BF  A9 ; # (C)
    C0  FE ; # small yu
    C1  E0 ; # small a
    C2  E1 ; # small b
    C3  F6 ; # small ts
    C4  E4 ; # small d
    C5  E5 ; # small ye
    C6  F4 ; # small f
    C7  E3 ; # small g
    C8  F5 ; # small kh
    C9  E8 ; # small i
    CA  E9 ; # small j
    CB  EA ; # small k
    CC  EB ; # small l
    CD  EC ; # small m
    CE  ED ; # small n
    CF  EE ; # small o
    D0  EF ; # small p
    D1  FF ; # small ya
    D2  F0 ; # small r
    D3  F1 ; # small s
    D4  F2 ; # small t
    D5  F3 ; # small u
    D6  E6 ; # small zh
    D7  E2 ; # small v
    D8  FC ; # small soft sign
    D9  FB ; # small y
    DA  E7 ; # small z
    DB  F8 ; # small sh
    DC  FD ; # small e
    DD  F9 ; # small shch
    DE  F7 ; # small ch
    DF  FA ; # small hard sign
    E0  DE ; # capital YU
    E1  C0 ; # capital A
    E2  C1 ; # capital B
    E3  D6 ; # capital TS
    E4  C4 ; # capital D
    E5  C5 ; # capital YE
    E6  D4 ; # capital F
    E7  C3 ; # capital G
    E8  D5 ; # capital KH
    E9  C8 ; # capital I
    EA  C9 ; # capital J
    EB  CA ; # capital K
    EC  CB ; # capital L
    ED  CC ; # capital M
    EE  CD ; # capital N
    EF  CE ; # capital O
    F0  CF ; # capital P
    F1  DF ; # capital YA
    F2  D0 ; # capital R
    F3  D1 ; # capital S
    F4  D2 ; # capital T
    F5  D3 ; # capital U
    F6  C6 ; # capital ZH
    F7  C2 ; # capital V
    F8  DC ; # capital soft sign
    F9  DB ; # capital Y
    FA  C7 ; # capital Z
    FB  D8 ; # capital SH
    FC  DD ; # capital E
    FD  D9 ; # capital SHCH
    FE  D7 ; # capital CH
    FF  DA ; # capital hard sign
}

### 调度文件
pathinfo.conf
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO       $path_info;
try_files $fastcgi_script_name =404;

enable-php.conf
location ~ [^/]\.php(/|$)
{
    try_files $uri =404;
    #fastcgi_pass  unix:/tmp/php-cgi.sock;
    fastcgi_pass  php:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
}

enable-php-pathinfo.conf
location ~ [^/]\.php(/|$)
{
    #fastcgi_pass  unix:/tmp/php-cgi.sock;
    fastcgi_pass  php:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
    include pathinfo.conf;
}

### 域名fastcgi文件
enable-php-pathinfo-mydomain.com.conf
location ~ [^/]\.php(/|$)
{
    fastcgi_pass  php:9000;
    fastcgi_index index.php;
    fastcgi_param  SCRIPT_FILENAME    /var/www/html/mydomain.com/$fastcgi_script_name;
    include fastcgi_params;
    include pathinfo.conf;
}

### 重写文件
rewrite_wordpress.conf
location / {
    try_files $uri $uri/ /index.php?$args;
}
# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

rewrite_typecho.conf
if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php$1 last;
}

### 虚拟主机配置文件
mydomain.com.conf
server
    {
        listen 80;
        #listen [::]:80;
        server_name mydomain.com www.mydomain.com;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /usr/share/nginx/html/mydomain.com;
        include rewrite_wordpress.conf;
        #error_page   404   /404.html;
        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }
        include enable-php-pathinfo-mydomain.com.conf;
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }
        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }
        location ~ /.well-known {
            allow all;
        }
        location ~ /\.
        {
            deny all;
        }
        access_log off;
    }
server
    {
        listen 443 ssl http2;
        #listen [::]:443 ssl http2;
        server_name mydomain.com www.mydomain.com;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /usr/share/nginx/html/mydomain.com;
        ssl_certificate ssl.mydomain.com.crt;
        ssl_certificate_key ssl.mydomain.com.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;
        ssl_ciphers "TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5";
        ssl_session_cache builtin:1000 shared:SSL:10m;
        # openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
        ssl_dhparam dhparam.pem;
        include rewrite_wordpress.conf;
        #error_page   404   /404.html;
        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }
        include enable-php-pathinfo-mydomain.com.conf;
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }
        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }
        location ~ /.well-known {
            allow all;
        }
        location ~ /\.
        {
            deny all;
        }
        access_log off;
    }

### 程序配置文件
nginx.conf
user  nginx;
#worker_processes  1;
error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;
#events {
#    worker_connections  1024;
#}
include set_worker.conf;
pcre_jit on;
include set_event.conf;
#include /etc/nginx/modules/*.conf;
http {
#include       /etc/nginx/mime.types;
default_type  application/octet-stream;
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';
#access_log  /var/log/nginx/access.log  main;
#sendfile        on;
#tcp_nopush     on;
#keepalive_timeout  65;
#gzip  on;
include /etc/nginx/conf.d/*.conf;
include set_client.conf;
include set_sendfile.conf;
include set_tcp.conf;
include set_gzip.conf;
include set_fastcgi.conf;
server_tokens off;
ssl_prefer_server_ciphers on;
access_log off;
keepalive_timeout  60;
include mime.types;
}

## 创建SSL访问校验文件(可选)
apk add openssl
openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048

## 部署LNMP
### 创建网络(可选操作)

docker network create lnmp

### 部署mariadb(不公开端口)
docker run \
-v /data/mysql:/var/lib/mysql \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=root \
--restart=always \
--name mariadb \
-d mariadb

### 准备php文件(准备一次即可,多次部署不必反复准备)
mkdir -p /data/php/php-fpm.d
docker run --name php -d php:fpm
docker cp php:/usr/local/etc/php/php.ini-production /data/php/php.ini
docker cp php:/usr/local/etc/php-fpm.d/www.conf /data/php/php-fpm.d/www.conf
docker stop php
docker rm php

### 部署php-fpm(采用LINK的方式直连DB)
docker run \
-v /data/www:/var/www/html \
-v /data/php/php.ini:/usr/local/etc/php/php.ini \
-v /data/php/php-fpm.d/www.conf:/usr/local/etc/php-fpm.d/www.conf \
-v /etc/localtime:/etc/localtime:ro \
--restart=always \
--name php \
--link mariadb \
-d php:fpm

### 部署nginx(因PHP未公开端口,需要LINK直连PHP,实现FASTCGI中PHP:9000的通讯)
docker run \
-p 80:80 \
-v /data/www:/usr/share/nginx/html \
-v /data/nginx:/etc/nginx \
-v /etc/localtime:/etc/localtime:ro \
--restart=always \
--name nginx \
--link php \
-d nginx

### 安装PHP扩展(使得PHP可以操作数据库,记得重启下PHP)
docker exec -it php bash
docker-php-ext-install mysqli

### 部署phpmyadmin(采用LINK的方式直连DB)
docker run \
-p 8080:80 \
-v /etc/localtime:/etc/localtime:ro \
--restart=always \
--name pma \
--link mariadb:db \
-d biarms/phpmyadmin

## 更改MYSQL密码
http://ip地址:8080,使用root/root登录后,对账户进行修改密码,如需要,同时创建新用户与数据库

# 搭建站点
## 后台安装站点源码

cd /data/www
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
tar zxvf *.tar.gz
rm -rf *.tar.gz
chown www-data wordpress
mv wordpress mydomain.com
chown可能有误吧,试试nobody 33 www-data都可以

## 前台安装
http://ip地址/wordpress/
录入站点、数据库信息

成功

# 参考文章
## 建站

https://509509.xyz:82/index.php/archives/5/
https://www.right.com.cn/forum/thread-592460-1-1.html
https://www.jianshu.com/p/cd1636c94f9f

## 组件
https://hub.docker.com/r/ebspace/aarch64-phpmyadmin
https://hub.docker.com/r/biarms/phpmyadmin

## 数据库问题处理
https://blog.csdn.net/dwsMo2/article/details/80016236
https://cloud.tencent.com/developer/ask/177844


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

 楼主| | 显示全部楼层

TYPECHO\SHOWDOC

本帖最后由 myheartbeyond 于 2019-8-13 12:53 编辑

# 补充
虽然WORDPRESS功能丰富,但是对于N1来说,进程峰值占用的确很高,所以考虑轻量的TYPECHO
TYEPCHO部署时,主要的问题
安装时,会提示
Database Query Error


网上的解决方法,多是改动config.inc.php(该文件,只有在你点击安装,提示上述错误后,才会在网站目录下产生,默认不存在)的55行,将Pdo_SQLite或Mysql改成Pdo_mysql

实际上,分离部署后的LNMP中,直接安装TYEPCHO,会发现,只有一个数据库选项
Pdo_SQLite


因此需要进行PHP的扩展安装Pdo_Mysql
docker exec -it php bash
docker-php-ext-install pdo_mysql
exit
docker restart php


再次查看,已经支持新的驱动器,注意数据库地址,是MARIADB的docker进程所定义的name


使用MYSQL的适配器,进行配置,成功


也没有提示什么错误,因为我的配置中开启了pathinfo,所以不会报什么404错误。



# showdoc部署
简单至极,直接下载源码, 解压并放置在网站目录内,更改属主即可完成。
按官方的方式,使用PHP方式安装。(我不想用DOCKER方式安装,因为我不想用端口访问)
下载源码
https://github.com/star7th/showdoc/archive/master.zip
释放源码到网站目录
比如释放到/data/www/mydomain.com/
更改属主chown 33 -R /data/www/mydomain.com/showdoc/
浏览器访问
mydomain.com/showdoc/
进行安装即可
默认账号密码showdoc/123456




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

站一楼看看
   
回复

使用道具 举报

都是要执行的
回复

使用道具 举报

这个是刷机教程吗?了解一下下。。。。
回复

使用道具 举报

谢谢分享了
回复

使用道具 举报

谢谢分享
回复

使用道具 举报

太喜欢了
楼主走在前头了
回复

使用道具 举报

祝各位搭建成功
回复

使用道具 举报

什么东西,这么高级,
回复

使用道具 举报

来自手机 | 显示全部楼层
单口armbian做科学AP最好,简单就是美
回复

使用道具 举报

感谢楼主分享!!!!
回复

使用道具 举报

思考下
。。。。。。。。
回复

使用道具 举报

了解下升级内核
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-22 10:34

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表