自分用だと思うので大雑把に書いています。
1. cloudflaredをhttps://pkg.cloudflare.com/index.htmlを参考にダウンロード&インストールする
2. cloudflared loginを実行する、そしたら長い認証リンクが出てくるのでそれをブラウザにコピペする
3. 認証に成功したらcloudflared tunnel create (トンネル名)を実行する、やたらと長いUUIDが出てくるのでそれをローカルのメモにコピペする
4. /.cloudflared/config.ymlをsudoを使ってnanoとかvimとかで開く(ちなみにこれを書いた人はvim嫌いでnano派です)
5. config.ymlをこのように記述する(hostnameは自分の使うドメインに、UUIDは取得した物に置き換える)
tunnel: UUID
credentials-file: /etc/cloudflared/UUID.json
ingress:
- hostname: blog.example.net
service: http://localhost:8080
- service: http_status:404
6. WordPressの環境依存をダウンロード&インストールする
sudo apt install nginx mariadb-server php php-fpm php-mysql php-xml php-gd php-curl php-mbstring unzip wget -y
7. MySQLの設定をする
sudo mysql -u root -p
CREATE DATABASE wpdb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON wpdb.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
8. 日本語版WordPressをダウンロード&インストールする
cd /var/www
sudo wget https://ja.wordpress.org/latest-ja.zip
sudo unzip latest-ja.zip
sudo mv wordpress blog
sudo chown -R www-data:www-data /var/www/blog
9. /etc/nginx/sites-available/blogを4.と同じくsudoを使ってnanoとかvimとかで開く
このように記述する
server {
listen 8080;
server_name blog.example.net;
root /var/www/blog;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
access_log /var/log/nginx/blog.access.log;
error_log /var/log/nginx/blog.error.log;
}
10. cloudflared tunnel run (トンネル名)で起動
最後にブラウザで開いて色々設定するだけ