侧边栏壁纸
博主头像
STONE

行动起来,活在当下

  • 累计撰写 70 篇文章
  • 累计创建 67 个标签
  • 累计收到 5 条评论

目 录CONTENT

文章目录

[转载] nginx+php+mysql保姆级typecho博客搭建教程

Administrator
2023-08-24 / 0 评论 / 0 点赞 / 288 阅读 / 0 字
温馨提示:
本文最后更新于2023-08-31,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

nginx+php+mysql保姆级typecho博客搭建教程

一、先免费获取一个VPS,并且SSH登录进去。

二、更新系统(可选)

apt update -y && apt-get update -y 
#可选
apt-get upgrade -y
安装warp(可选)(对于没有IPV4的网站增加IPV4访问)
wget -N --no-check-certificate https://gitlab.com/rwkgyg/CFwarp/raw/main/CFwarp.sh && bash CFwarp.sh

三、卸载 apache2(由于我的系统自带了,没有的可以忽略这一步)

查看是否内置apache2:

sudo systemctl status apache2

卸载apache2:

apt remove --purge apache2 apache2-doc -y

四、安装nginx

sudo apt install nginx -y

在浏览器http://IP 可以出现Welcome to nginx,至此nginx安装完毕,是不是很简单?!

附常用命令:

#运行状态
sudo systemctl status nginx 
#开机自启
sudo systemctl enable nginx
#重启
sudo systemctl restart nginx
#重新加载配置文件
nginx -s reload
#nginx配置检测
nginx -t

五、在cloudflare设置子域名:如 blog.example.com ,使得子域名解析到对应的VPS的IP地址 :

J66FJJD8.png

六、申请域名证书,并安装到某个文夹中

安装curl(已经有的可以忽略这一步)

apt install curl -y

安装ACME

#安装acme
curl https://get.acme.sh | sh
#国内服务器
wget -O -  https://get.acme.sh | sh
#设置软链接
ln -s  /root/.acme.sh/acme.sh /usr/local/bin/acme.sh
#切换证书机构为letsencrypt
acme.sh --set-default-ca --server letsencrypt
申请证书
acme.sh  --issue -d lovesmile.eu.org -k ec-256 --webroot  /var/www/html
安装证书到/etc/cer 目录
mkdir /etc/cer
acme.sh --install-cert -d lovesmile.eu.org --ecc \
--key-file /etc/cer/server.key \
--fullchain-file /etc/cer/server.crt \
--reloadcmd "systemctl force-reload nginx"
此时证书路径:

证书crt

/etc/cer/server.crt

私钥

/etc/cer/server.key

七、安装php 7.4

sudo apt-get install php7.4 php7.4-fpm php7.4-mysql php7.4-gd php7.4-mbstring
安装常用插件(可选)
sudo apt install libapache2-mod-php
sudo apt install php-curl
sudo apt install php-xml
sudo apt install php-xmlrpc
sudo apt install php-zip
sudo apt install php-soap
sudo apt install php-intl
输入以下命令,即可查看安装信息:
php -v
启动php7.4
sudo service php7.4-fpm start
查看运行状态
systemctl status php7.4-fpm

打开目录为:/etc/php/7.4/fpm/pool.d,找到 listen 项记录下来:

listen = /var/run/php/php7.4-fpm.sock
#备注:也可以直接用vim查看:

sudo vim /etc/php/7.4/fpm/pool.d/www.conf

进行重启服务

service php7.4-fpm restart

进入网站的默认路径添加测试文件

cd /var/www/html/
sudo vi info.php

内容是

<?php
phpinfo();
?>

运行:http://ip/info.php

八、安装mysql

安装mysql
sudo apt-get install mysql-server -y
设置mysql
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'abc123456';
exit
建立网站数据库:
sudo mysql -u root -p # 以root进入数据库
CREATE DATABASE typecho; # 创建数据库blog
SHOW DATABASES; # 查看创建的数据库
CREATE USER 'typecho'@'%' IDENTIFIED BY 'password'; # 创建新用户,%代表所有IP均可登录
SELECT user, host from mysql.user; # 查看用户
GRANT ALL PRIVILEGES ON typecho.* TO 'typecho'@'%'; # 将typecho数据库的所有权限授予用户typecho
exit
附:完全卸载mysql
sudo apt-get autoremove --purge mysql-server -y
sudo apt-get remove mysql-common
sudo rm -rf /etc/mysql/ /var/lib/mysql
清理残留数据
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
sudo apt autoremove
sudo apt autoclean

九、安装typecho

到官网:https://typecho.org/download下载安装包:https://github.com/typecho/typecho/releases/latest/download/typecho.zip

利用ftp上传typecho压缩包到/var/www/html/

并且运行下面命令解压文件:

如果出现unzip命令不存在,则安装以下即可:

apt install unzip
#创建typecho目录:
mkdir /var/www/html/typecho
进入typecho目录
cd /var/www/html/typecho

#下载安装包
wget https://github.com/typecho/typecho/releases/latest/download/typecho.zip
#解压typecho
unzip typecho.zip
#赋予typecho最高权限
chmod -R 777 /var/www/html/typecho

十、更改nginx配置

命令

vim  /etc/nginx/sites-enabled/default

最好直接cd /etc/nginx/sites-enabled/ 进去在文本中修改

server {
        #SSL 默认访问端口号为 443
        listen 443 ssl;
        #请填写绑定证书的域名
        server_name blog.example.com;
        #请填写证书文件的相对路径或绝对路径
        ssl_certificate /etc/cer/server.crt;
        #请填写私钥文件的相对路径或绝对路径
        ssl_certificate_key /etc/cer/server.key;
        ssl_session_timeout 5m;
        #请按照以下协议配置
        ssl_protocols TLSv1.2 TLSv1.3;
        #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;
		#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
        root /var/www/html/typecho;
        location / {
            index index.php index.html index.htm;
            try_files $uri $uri/ = 404;
            set $path_info "";
		    set $real_script_name $fastcgi_script_name;
		    if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
		    set $real_script_name $1;
		    set $path_info $2;
			}
			fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
			fastcgi_param SCRIPT_NAME $real_script_name;
        }
		location ~ .*\.php(\/.*)*$ {
				#填写获取的sock路径,默认如下:
				fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
		          fastcgi_index index.php;
		          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
		          include fastcgi_params;
			}
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

修改后运行nginx测试:

nginx -t

根据测试情况进行修改

测试通过后,重新加载配置即可

nginx -s reload

最后:打开https://域名/install即可安装typecho;

0

评论区