設定主機
切換成root角色
sudo su
有些vps預設會直接用root,就不用切換。我是習慣全用root去執行操作,主機只有自己會管理,有時遇到權限的問題真的蠻雷的 XD
修改時區
dpkg-reconfigure tzdata
修改語系
vi /etc/locale.gen
把 zh_TW.UTF-8 mark打開
locale-gen
更新程式並且重啟主機
apt update
apt dist-upgrade
reboot
重啟用,登入後再切到 root 角色
sudo su
安裝伺服器
apt install nginx php-fpm php-gd php-mbstring php-gd php-xml php-mysql mysql-server mysql-client certbot
Drupal或WordPress裝完後可以再檢查看看有沒有漏掉哪個php程式,再補齊安裝即可
不要用apt-install php,這樣會安裝apache2
設定MySQL
設定mysql密碼
以root進入mysql
mysql -u root
更改密碼
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'yourpassword'; exit;
yourpassword 記得改成你自己的密碼
如果你的資料庫有設定外連,那可能就要避免直接用root,不然就是務必把防火牆的限定做好
調整conf檔
在 /etc/mysql/mysql.cnf 最尾段加入
[client]
default-character-set = utf8mb4
[mysqld]
character-set-server = utf8mb4
max_connections = 600
innodb_read_io_threads = 24
innodb_write_io_threads = 24
expire_logs_days = 7
max_binlog_size = 1G
加入後後重啟 server,binlog_size務必要設定,log檔可能會被你的空間佔滿
在 ~/.my.cnf 加入密碼
[client]
password = yourpassword
MySQL基本的管理指令
建立資料庫
mysqladmin -u root create site
刪除資料庫
mysqladmin -u root drop site
匯出資料庫
mysqldump -u root site > site.sql
匯入資料庫
mysql -u root site < site.sql
學會這幾招基本上就差不多可以不用裝phpMyAdmin XD
啟用及設定伺服器防火牆
ufw enable
ufw allow from xxx.xxx.xxx.xxx (填上自己連入的IP)
ufw allow 80/tcp
ufw allow 'Nginx HTTP'
ufw allow 'Nginx HTTPS'
加入不同版本的php來源
add-apt-repository ppa:ondrej/php
aptitude update