相信同学们都还是在使用传统的建站面板在搭建网站或是其他服务吧,但是殊不知,用服务器自建网站运行环境也不是什么难事。那么今天我们就用一个简单 wordpress 博客网站为例,让大家初步了解一下如何自建 wordpress 网站。
安装 nginx
大家可以把 nginx 理解为一个网站系统,就像是我们的 app 需要跑在安卓或是 iOS 系统一样,我们的网站也需要跑在一个系统上,这个系统可以理解为 nginx。这也是一个比较抽象的解释。
我们可以在服务器终端中输入如下命令,系统就会自动安装 nginx
apt install nginx -y
在输入以上命令后,系统将自动安装 nginx。
PHP 为网站运行基础语言,有了 PHP 才可以正常执行网站程序。
apt install php7.4 php7.4-cli php7.4-fpm php7.4-mysql php7.4-gd php7.4-curl php7.4-mbstring php7.4-xml php7.4-zip -y
在执行以上命令后,系统将自动安装 PHP 及必用拓展。
安装 MySQL 及配置
MySQL 是数据程序,我站的用户程序及网站等相关数据都会存放在这个数据库里。
apt install mysql-server -y
当命令执行完成后,我们可以通过以下命令登录 MySQL 数据库对其进行配置。
mysql -uroot
首先,我们需要创建一个数据库用来存放 wordpress 的数据,123 为数据名称,可会自定义修改。
CREATE DATABASE `123`;
然后我们创建一个用户用来管理这个数据库,这里的 123 为数据库用户名,456 为用户密码
CREATE USER '123'@'localhost' IDENTIFIED BY '456'; GRANT ALL PRIVILEGES ON `123`.* TO '123'@'localhost'; FLUSH PRI12123VILEGES;
把数据库的权限给创建的用户,123 代表数据库名,456 为用户名
GRANT ALL PRIVILEGES ON `123`.* TO '456'@'localhost';
刷新权限
FLUSH PRIVILEGES;
退出数据库
exit
配置 wordpress
进入文件夹
cd var/www
下载新版 wordpress
wget https://wordpress.org/latest.tar.gz
解压 wordpress 文件
sudo tar -xzf latest.tar.gz
配置 wordpress 必要文件权限
chmod 640 /var/www/html/wordpress/wp-config.php
编辑 nginx 默认配置文件
vi /etc/nginx/sites-available/default
参考如下配置进行修改
user www-data; # 运行 Nginx 的用户和组
worker_processes auto; # 自动检测 CPU 核心数并设置工作进程数
pid /run/nginx.pid; # 存放 PID 文件的位置
events {worker_connections 768; # 每个工作进程的最大并发连接数}
http {
sendfile on; # 开启高效传输模式
tcp_nopush on; # 开启防止网络阻塞
tcp_nodelay on; # 开启防止网络延迟
keepalive_timeout 65; # 连接保持时间
types_hash_max_size 2048; # 类型哈希表大小
server_tokens off; # 关闭 Nginx 版本号显示
# MIME 类型定义
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; # 访问日志路径
error_log /var/log/nginx/error.log; # 错误日志路径
gzip on; # 开启 GZIP 压缩
gzip_disable "msie6"; # 禁用 IE6 的 GZIP 压缩
include /etc/nginx/conf.d/*.conf; # 包含其他配置文件
include /etc/nginx/sites-enabled/*; # 包含站点配置文件
# 虚拟主机配置示例
server {
listen 80; # 监听 80 端口
server_name example.com; # 域名
root /var/www/wordpress; # 网站根目录
index index.html index.php index.php; # 默认索引文件
location / {try_files $uri $uri/ =404; # 尝试匹配文件或目录,否则返回 404}
# PHP 脚本处理
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; # PHP-FPM 套接字
}
# 静态文件缓存
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}
}
配置完以上内容后可以用 nginx 命令检查是否有错。
nginx -t
重载 nginx 配置
systemctl reload nginx
至此,所有终端的配置已经完成。可以访问服务器 IP 后绑定的域名进行正常网站安装步骤即可