利用树莓派搭建web服务器(云主机通用)

573天前 · 拾枝杂谈 · 未来与梦 · 160次阅读

前言

前些天(其实蛮久了)溟狗大佬对于奶糖的博客提出了疑问:
奶糖的博客看不到头像(原因是头像服务Gravatar在境内是封锁的)但是奶糖的博客ip解析地址在境外,但是却不能境外访问。
原因:奶糖的web托管服务是那种仅为学习提供的(价格低),为了防止有人搭建恶意网站所以管理员封锁了外网访问。
于是,奶糖也是在看到cpolar的交流群内,有人利用本地服务器+内网穿透的组合搭建了基于
Apache和WordPress的博客。奶糖无法做到电脑常开,但是突然想起来自己有一个树莓派3b,也许可也用来搭建?(不过因为板子性能差使用选择了nginx)
开工!!!!!!!!

准备工作(如果是云服务器,请直接跳过此步骤)

准备工作


配置树莓派的方法有很多(有很多种有无屏幕,是否为官方的系统等等)这里选用奶糖认为最最最简单的来进行d=====( ̄▽ ̄*)b

  1. 首先进入树莓派官网下载树莓派官方的刷系统工具Raspberry Pi Imager 不过可能需要魔法~(就请自己解决啦~)
  2. 进入后选择自己的树莓派版本,选择Ubuntu 22.04LTS 32位(64位没有尝试,不过应该也行.....?(●ˇ∀ˇ●))最后选择内存卡即可(要先格式化!!!!!!!)注意,在写入前会让我们编辑设置(在设置里设置用户名及密码,并打开ssh登陆,最重要的是wifi的配置一定要,因为后续再想配置网络只能通过串行总线,连接屏幕,或修改文件来进行)。写入完成后插进树莓派连接电源开机即可。
  3. 打开所连接网络的路由器管理页面(通常会写在路由器背面,注意电脑所连接网络必须是路由器的网络才能登陆到管理页面)然后查看树莓派所分配到的ip地址(设备名称即为上面设置的)

利用ssh连接到树莓派,这里推荐使用mobaxterm或者是putty。填入树莓派的IP地址,port设置为22即可。进行连接,填入用户名和密码即可正常进入系统。

  1. 进行系统换源(云服务器一般是换好的,但是树莓派这个系统里默认的是ubuntu的官方源,很慢(>人<;))

如果图方便可用直接先进入rootsudo -i
当然比建议这么做(可能把系统玩坏,如果实力够硬请忽视奶糖的这段话( o=^•ェ•)o ┏━┓)
输入进入源的配置文件(有需要的话可以安装其他文本编辑器vim等,nano不好用qwq)

sudo nano /etc/apt/sources.list

将文件中的内容全部注释掉(前面加上#)当然不需要的话直接全部删了也行,换入下方的源

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse

deb http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src http://ports.ubuntu.com/ubuntu-ports/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse

如果用的其他版本系统自行到源网站寻找,这里用的是清华源(如果真的是看教程的,,,应该都选的是奶糖说的系统啦!!!╰(‵□′)╯)
CTRL+O保存,CTRL+X退出。(一定要用sudo,要不然会没有修改权限)
执行下方指令进行更新

sudo apt-get update && apt-get upgrade

遇到选项填写y即可,是对软件进行更新。
如果后续遇见No containers need to be restarted.No user sessions are running outdated binaries.No VM guests are running outdated hypervisor (qemu) binaries on this host.这样的提示,是因为出发了needrestart的自动更新,后续可能也会遇到,要解决的话执行sudo apt purge needrestart即可。

最后如果需要使用中文的话执行

sudo apt-get install language-pack-zh-hans
sudo update-locale LANG=zh_CN.UTF-8

然后sudo reboot重启即可
but,虽然奶糖英语不好,但是还是要尽量看一些英文的,如果遇到不支持中文的还能自己看看不是嘛~

安装LNMP环境

  1. 安装nginx

    安装依赖

    sudo apt install -y gcc zlib1g-dev libpcre3 libpcre3-dev openssl libssl-dev
    

    安装nginx

    sudo apt install -y nginx

    配置nginx

    sudo nano /etc/nginx/nginx.conf
    user www-data;
    worker_processes 1; #修改这里
    pid /var/run/nginx.pid;
    events {
    worker_connections 64; #修改这里
    #multi_accept on;
    }

    将下方代码的注释去掉(就是把#删除)

    gzip on;
    gzip_disable “msie6”;
    gzip_vary on;
    gzip_proxied any;
    gzip_comp_level 6;
    gzip_buffers 16 8k;
    gzip_http_version 1.1;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

    CTRL+O保存,CTRL+X退出
    上述配置是typecho所必须的要不然会导致管理页面404(其他博客系统不详)

    启动nginx

    sudo service nginx start

    然后浏览器进入树莓派的ip(和上面的一样)即可看到welcome to nginx,即代表成功(云服 务器需要开放80端口,如果不会还请自行百度吧qwq)

  2. 安装php
    安装php和相关扩展

       sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml

    这里安装的是最新版如果需要可以进行更改如:

    sudo apt install php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd php8.1-mbstring php8.1-xml

    配置php

    sudo nano /etc/php/这里是对应的php版本/fpm/php-fpm.conf
    ; The maximum number of processes FPM will fork. This has been design to control
    ; the global number of processes when using dynamic PM within a lot of pools.
    ; Use it with caution.
    ; Note: A value of 0 indicates no limit
    ; Default Value: 0
    process.max = 4 #修改这里

    保存退出

    sudo nano /etc/php/这里是对应的php版本/fpm/php.ini
    ; Maximum amount of memory a script may consume (128MB)
    ;http://php.net/memory-limit
    memory_limit = 32M #修改这里

    保存退出
    上述配置是typecho所必须的要不然会导致管理页面404(其他博客系统不详)

  3. 配置nginx支持php

    sudo nano /etc/nginx/sites-enabled/default

    找到如下内容

    location / {
      # First attempt to serve request as file, then
      # as directory, then fall back to displaying a 404.
      try_files $uri $uri/ =404;
        }

    将上述内容替换为

    location / {
    index  index.html index.htm index.php default.html default.htm default.php;
    if (-f $request_filename/index.html){
    rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
    rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
    rewrite (.*) /index.php;
    }
    }
    
    location ~\.php(\/.*)*$ {
    fastcgi_pass unix:/run/php/php这里是对应的php版本-fpm.sock;
    #fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    }

    保存退出
    完成后重启nginx和php-fpm

    sudo /etc/init.d/nginx restart
    sudo /etc/init.d/php这里是对应的php版本-fpm restart

    完成后就有了web服务器了ε=ε=ε=(~ ̄▽ ̄)~

安装mysql数据库

sudo apt install -y mysql-server

以root权限进入数据库,输入密码

mysql -u root -p

新建用户

create user '这里是名字!' @'%' identified by '这里是密码!';

新建数据库

CREATE DATABASE 这里是数据库名字;

将数据库权限给到用户

grant all on 这里是数据库名字.* to 这里是用户名@'%';

输入quit退出
重启数据库

   service mysql restart

安装typecho

  1. 先给安装文件夹权限

    sudo chown -R www-data:www-data /var/www/html

    这里也可以是777权限(但是不建议)

  2. 下载typecho

    cd /var/www/html
    sudo wget https://github.com/typecho/typecho/releases/download/v0.9-13.12.12-release/0.9.13.12.12.-release.tar.gz

    解压

    tar zxvf 0.9.13.12.12.-release.tar.gz
    mv build/* /var/www/html
  3. 访问ip地址即可进入安装页面

选择原生适配器即可,按照内容填写内容安装完成。

总结

总结了一些自己遇到的问题,不断更改试错qwq,搞了大半夜(;´д`)ゞ,算是历尽坎坷惹

参考文献

https://blog.csdn.net/qq_39125451/article/details/84898288
https://blog.csdn.net/m0_61578123/article/details/130906874
Nice2CU

👍 0

none

最后修改于178天前

评论

贴吧 狗头 原神 小黄脸
收起

贴吧

  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡
  • 贴吧泡泡

狗头

  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头
  • 狗头

原神

  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神
  • 原神

小黄脸

  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  • 小黄脸
  1. 网友小宋 563天前

    纯代码安装,真是好啊!学习到了

    1. milkcandy 563天前

      QwQ,看到大佬的文章了,其实一开始是想过用宝塔的,但是一直抽风要么安装失败要么进不去面板,一次还要安装好长时间,索性锻炼一下自己(被迫)

      1. 网友小宋 563天前

        树莓派装宝塔很多环境安装有问题,最后给我劝退了。

        1. milkcandy 563天前

          唔qwq,原来是这样(长知识了)

目录

avatar

milkcandy

24

文章数

59

评论数

5

分类