作为一个自己建站玩儿的行外人,想弄一个小白建站系列,记录自己如何从一个一窍不通的行外人,成为一个能够磕磕绊绊完成独立建站的几乎一窍不通的行外人的。
这些是我熟悉了一些vps的基本操作后,在vps上建站的步骤及参考和使用的一些文章,存档并供参考。
建站步骤
前置条件:有域名或会购买域名,会购买vps,会一点ssh,会一点linux命令
1. 防火墙设置
2. caddy安装
3. PHP安装
4. MariaDB安装
5. MariaDB设置
6. 安装wordpress
7. caddy设置
8. PHP设置
9. wordpress设置
综合参考
来源:www.howtoforge.com
文章:How to Install and Configure Caddy Web Server with PHP and MariaDB on Ubuntu 20.04
链接:https://www.howtoforge.com/tutorial/ubuntu-caddy-web-server-installation/
说明:主要参考本文的建站步骤、防火墙操作、PHP安装、Mariadb设置、caddy设置、PHP设置。本文中的caddy安装
1. 防火墙设置
sudo ufw allow http
sudo ufw allow https
sudo ufw reload
2. caddy安装
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
来源:caddy官网 https://caddyserver.com/
文章: Install
链接:https://caddyserver.com/docs/install
说明:caddy安装按照官网说明进行
3. PHP安装
针对ubuntu 20.04版本,以后版本可能也适用。20.04版本的php版本是7.4。
sudo apt update
sudo apt install php-cli php-fpm php-mysql php-bcmath php-curl php-imagick php-intl php-json php-mbstring php-xml php-zip
4. MariaDB安装
Mariadb是保存网站数据的数据库,是Mysql的开源分支,ubuntu默认自带10.3版本。
sudo apt update
sudo apt install mariadb-server
5. MariaDB设置
5.1 MariaDB安全设置
安装完成后进行mariadb设置:
sudo mysql_secure_installation
然后会提示你输入root密码:
Enter current password for root (enter for none):
直接回车,然后被提示:
set root password? [y/n]
根据需要进行设定
然后可根据需要完成以下设置:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
5.2 MariaDB 数据库设置
sudo mysql
如需要,输入root账户密码,然后进入Mariadb的命令行,请注意每条命令后的’;’必不可少。
CREATE DATABASE testdb;
CREATE USER 'user' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON testdb.* TO 'user';
exit
其中testdb是用来存储网站内容的数据库名称,user和password是登录数据库的用户名和密码,最后是把testdb的所有权限授权给user并退出。
6. 安装wordpress
创建放置网站文件的基本文件夹:
sudo mkdir -p /var/www/example.com
创建用于存储log的文件夹
sudo mkdir /var/log/caddy
在安装caddy时,caddy创建了一个用户名为caddy,属于caddy组的用户,把两个文件夹的权限赋予该用户:
sudo chown -R caddy:caddy /var/log/caddy
sudo chown -R caddy:caddy /var/www/example.com
不知道是不是以上两个授权都必须,这么弄没出问题。
进入拟安装的目录
cd /var/www/example.com/
下载wordpress最新文件
sudo wget https://wordpress.org/latest.tar.gz
如果用中文版
sudo wget https://cn.wordpress.org/latest-zh_CN.tar.gz
解压缩
tar -xzvf latest.tar.gz
或
tar -xzvf latest-zh_CN.tar.gz
进入wordpress文件夹并设置wordpress
cd wordpress/
cp wp-config-sample.php wp-config.php
vi wp-config.php
然后可以看到:
// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );
/** Database username */
define( 'DB_USER', 'username_here' );
/** Database password */
define( 'DB_PASSWORD', 'password_here' );
/** Database hostname */
define( 'DB_HOST', 'localhost' );
/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );
/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
修改database_name_here为设置的数据库名称;
修改username_here为上述数据库的用户名;
修改password_here为上述数据库用户的密码。
7. 设置caddy
编辑Caddyfile
vi /etc/caddy/Caddyfile
然后把以下内容写入到Caddyfile中
example.com {
# root后是wp-config所在目录
root * /var/www/example.com/wordpress
log {
output file /var/log/caddy/example.com.access.log {
roll_size 10MiB
roll_keep 1000
roll_keep_for 168h
}
}
file_server
encode gzip
php_fastcgi unix//run/php/php7.4-fpm.sock
tls {
protocols tls1.2 tls1.3
}
}
设置caddy服务
systemctl enable caddy
8. PHP设置
首先打开www.conf文件
sudo vi /etc/php/7.4/fpm/pool.d/www.conf
然后找到user=www-date、group=www-data、listen.owner=www-data、listen.group=www-data,并将所有的=后改为caddy,如下所示:
...
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = caddy
; RPM: Keep a group allowed to write in log dir.
group = caddy
...
listen.owner=caddy
listen.group=caddy
然后重启php服务
sudo systemctl restart php7.4-fpm
9. wordpress设置
首先,来一个reboot大法(正常网站没有这么干的-_-),用ssh重启vps。
reboot
然后参考wordpress官网去设置吧,手里的vps设置好了,没办法完全验证了。
发表回复