WrodPress建站教程 1️⃣

52次阅读
没有评论

WordPress 安装

docker+nginx部署

SSL/TLS 加密 当前加密模式:完全(严格)配置方法

一、准备工作
目录结构如下:

wordpress/
├── docker-compose.yml
├── nginx.conf
├── uploads.ini
└── ssl/
├─── cert.pem
└─── key.pem

1、 创建目录
首先在服务器上创建一个目录用于存放 WordPress 的相关配置文件:

mkdir -p ~/wordpress
cd ~/wordpress

2、 文件准备
在 wordpress 目录下,需要准备以下文件与目录:

docker-compose.yml

nginx.conf

uploads.ini

ssl 文件夹
  • cert.pem
  • key.pem

二、 cloudflare配置

1、登录 Cloudflare 控制台

2、打开 SSL/TLS → Origin Server → Create Certificate

3、配置参数:

    • Key type: RSA

    • Hostnames: blog.171811.xyz 或 *.171811.xyz

    • Validity: 15 years(默认即可)

4、下载生成的证书:

    • 证书文件 (origin.pem) → 保存为 ./ssl/cert.pem

    • 私钥文件 (origin.key) → 保存为 ./ssl/key.pem

三、Docker 容器配置文件

在 wordpress/docker-compose.yml 中写入以下内容:

services:
    db:
        image: mysql:5.7
        volumes:
            - './db_data:/var/lib/mysql'
        restart: always
        environment:
            MYSQL_ROOT_PASSWORD: your_mysql_password
            MYSQL_DATABASE: wordpress
            MYSQL_USER: wordpress
            MYSQL_PASSWORD: your_wordpress_password

    redis:
        image: redis:latest
        restart: always
        entrypoint: redis-server --appendonly yes --requirepass your_redis_password --maxmemory 512mb --maxmemory-policy allkeys-lru
        ports:
            - "6379"
        volumes:
            - './redis_data:/data'
            - '/etc/timezone:/etc/timezone:ro'

    wordpress:
        depends_on:
            - db
            - redis
        image: wordpress:latest
        ports:
            - "8000:80"
        restart: always
        environment:
            WORDPRESS_DB_HOST: db:3306
            WORDPRESS_DB_USER: wordpress
            WORDPRESS_DB_PASSWORD: your_wordpress_password
            WORDPRESS_DB_NAME: wordpress
            WORDPRESS_CONFIG_EXTRA: |
                /* Redis configuration */
                define('WP_REDIS_HOST','redis');
                define('WP_REDIS_PORT','6379');
                define('WP_REDIS_PASSWORD','your_redis_password');
                define('WP_CACHE_KEY_SALT','your_salt_key');
                define('WP_CACHE',true);
            REDIS_HOST: redis
        volumes:
            - './wp_content:/var/www/html/wp-content'
            - './uploads.ini:/usr/local/etc/php/conf.d/uploads.ini'

    nginx:
        image: nginx:latest
        ports:
            - "80:80"
        volumes:
            - ./nginx.conf:/etc/nginx/nginx.conf:ro
        depends_on:
            - wordpress

在 wordpress/uploads.ini 中写入以下内容:

file_uploads = On
memory_limit = 256M
upload_max_filesize = 128M
post_max_size = 128M
max_execution_time = 300
max_input_time = 300

四、NGINX配置

在 wordpress/nginx.conf 中写入:

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
    worker_connections 1024;
}

http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    access_log /var/log/nginx/access.log combined;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    #上传大小限制(改大,避免 413)
    client_max_body_size 128M;

    server {
        listen 443 ssl http2;
        server_name domain.loca;

        ssl_certificate /etc/nginx/ssl/cert.pem;
        ssl_certificate_key /etc/nginx/ssl/key.pem;

        ssl_protocols TLSv1.2 TLSv1.3;
        ssl_ciphers HIGH:!aNULL:!MD5;

        location / {
            proxy_pass http://wordpress:80;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme; # 上传大文件时增加超时时间,避免“链接已过期”
            proxy_connect_timeout 300;
            proxy_send_timeout 300;
            proxy_read_timeout 300;
            send_timeout 300;
        }
    }
}

五、启动容器

进入 wordpress 目录后,执行以下命令:

docker-compose down
docker-compose up -d

六、WordPress Redis 插件安装

1、 访问网站
打开浏览器,输入域名:https://blog.***.com

2、登录后台
使用管理员账号和密码登录 WordPress

3、进入插件管理
左侧菜单 → 插件 → 安装插件

4、搜索 Redis 插件
在右上角搜索框输入:Redis

5、安装并启用
找到 Redis Object Cache 插件 → 点击 安装 → 启用

6、启用缓存
启用后在后台 → 设置 → Redis → 点击 Enable Object Cache

至此,你的 WordPress 已经成功接入 Redis 缓存,配合 Cloudflare SSL/TLS 完全(严格) 模式实现了安全与性能的双重提升 🚀。

正文完
 0
评论(没有评论)