基于ubuntu 22.04 LTS的VPS服务器(linode 2G)
一、基础设置
1.设置时区
dpkg-reconfigure tzdata
2.修改SSH端口
vi /etc/ssh/sshd_config
找到#Port 22 去掉#注释,改成任意端口号,如:Port 1234
Port 1234
3.重启SSH服务
service sshd restart
4.系统更新
apt-get update
apt-get upgrade --show-upgraded
二、LAMP安装
1.安装Apache web server
sudo apt install apache2
2. 安装MySQL web server
sudo apt install mysql-server
3.安装PHP
sudo apt install php libapache2-mod-php php-mysql
4. 要在服务器上托管WordPress站点,请安装以下PHP组件
sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc
三、为ubuntu 22.04 LTS 配置LAMP
1.配置Apache Web服务器
修改文件:/etc/apache2/apache2.conf
KeepAlive On
MaxKeepAliveRequests 50
KeepAliveTimeout 5
2.基于2GB Linode进行优化,修改文件:/etc/apache2/mods-available/mpm_prefork.conf
<IfModule mpm_prefork_module>
StartServers 4
MinSpareServers 3
MaxSpareServers 40
MaxRequestWorkers 200
MaxConnectionsPerChild 10000
</IfModule>
3.修改防火墙设置,此设置允许通过防火墙的 HTTP 和 HTTPS 连接,从而启用 Web 访问。
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable
4.验证防火墙设置
sudo ufw status
5. 禁用模块并使用 and 命令启用模块
sudo a2dismod mpm_event
sudo a2enmod mpm_prefork
6.重启Apache
sudo systemctl restart apache2
7. 确保 Apache 在重新启动后仍然有效
sudo systemctl status apache2
8.Apache现在已经准备好,请使用web浏览器访问服务器的ip地址,如果成功,浏览器将显示Apache2的欢迎页面
http://your_IP_address/
四、在 Apache 上配置域名与服务器主机
1.使用默认文件为新主机进行配置
Sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/hug.app.conf
2.为此域名修改配置文件,修改文件:/etc/apache2/sites-available/hug.app.conf
<Directory /var/www/html/hug.app/public_html>
Require all granted
</Directory>
<VirtualHost *:80>
ServerName hug.app
ServerAlias www.hug.app
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/hug.app/public_html
ErrorLog /var/www/html/hug.app/logs/error.log
CustomLog /var/www/html/hug.app/logs/access.log combined
</VirtualHost>
3.为域名创建目录
sudo mkdir -p /var/www/html/hug.app/{public_html,logs}
4.将所有者更改为:
sudo chown -R www-data:www-data /var/www/html/hug.app/public_html
5.设置目录权限:
sudo chmod -R 755 /var/www/html/hug.app/public_html
6.链接虚拟主机文件并启用站点:
sudo a2ensite hug.app
7.作为安全预防措施,禁用默认站点:
sudo a2dissite 000-default.conf
8.重新加载 Apache 以应用所有更改:
sudo systemctl reload apache2
9.验证域名是否可访问。域名的 DNS 记录必须已解析为服务器地址。使用浏览器访问域名,域名目录的内容应该是可见的。若没有任何文件添加到目录中,浏览器可能显示空白。
五、配置MySQL数据库
1. 以用户身份登录 MySQL shell
sudo mysql -u root
2.在MySQL中,创建数据库。
CREATE DATABASE webdata;
CREATE USER 'webuser' IDENTIFIED BY 'password';
GRANT ALL ON webdata.* TO 'webuser';
3.退出SQL
quit
4.最新版本需要root密码才能使用,再次进入MySQL
sudo mysql
5.设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'password';
6.退出SQL
exit
7. 使用内置的mysql_secure_installation工具提高数据库的安全性。根据请求提供帐户的 MySQL 密码。
sudo mysql_secure_installation
8. 当系统提示更改密码时,请保持密码不变。但要回答以下问题:
Remove anonymous users?
Disallow root login remotely?
Remove test database and access to it?
Reload privilege tables now?
六、配置PHP
1. 首先使用该选项验证安装了哪个 PHP 版本。
php -v
2. 如果启用了错误消息和日志记录,则 PHP 错误更容易调试。修改文件:/etc/php/8.1/apache2/php.ini
error_reporting = E_COMPILE_ERROR | E_RECOVERABLE_ERROR | E_ERROR | E_CORE_ERROR
error_log = /var/log/php/error.log
max_input_time = 30
3. 创建 PHP 错误日志并将日志的所有权分配给 Web 服务器:
sudo mkdir /var/log/php
sudo chown www-data /var/log/php
4. 重新启动 Apache 服务器以应用 PHP 更改:
sudo systemctl restart apache2
七、安装WordPress
1. 启用重写模块。这允许站点内的链接更具可读性。
sudo a2enmod rewrite
2. 要允许WordPress插件和扩展使用文件,请设置指令以启用它们。修改文件:/etc/apache2/sites-available/hug.app.conf
<VirtualHost *:80>
...
<Directory /var/www/html/hug.app/public_html/>
AllowOverride All
</Directory>
...
</VirtualHost>
3.运行Apache测试工具,提示Syntax OK则有效
sudo apache2ctl configtest
4. 重新启动 Apache 。
sudo systemctl restart apache2
八、下载WordPress
1.在网站的根目录中创建一个新目录。
sudo mkdir -p /var/www/html/hug.app/src
2. 输入新目录
cd /var/www/html/hug.app/src
3. 下载 WordPress 软件包
sudo wget http://wordpress.org/latest.tar.gz
4. 从文件中提取WordPress文件。
sudo tar -xvf latest.tar.gz
5. 使用当前日期重命名存档。这样可以更轻松地在将来还原文件。
sudo mv latest.tar.gz wordpress-`date "+%Y-%m-%d"`.tar.gz
6. 将提取的文件移动到域的根目录。
sudo mv wordpress/* ../public_html/
7. 确保 Web 服务器用户被授予对域的整个根目录的所有权。
sudo chown -R www-data:www-data /var/www/html/hug.app
九、在ubuntu 22.04 LTS 上配置WordPress,及SSL。
1. 使用 Web 浏览器访问域名,按步骤完成设置。
http://hug.app
2.登录WordPress后,在设置中修改 WordPress地址(URL)为:https://hug.app。站点地址(URL)为:https://hug.app
3. 修改Apache配置文件:/etc/apache2/sites-available/hug.app.conf
<Directory /var/www/html/hug.app/public_html>
Options Indexes FollowSymLinks
Require all granted
AllowOverride ALL
</Directory>
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/example.crt
SSLCertificateKeyFile /etc/apache2/ssl/example.key
ServerName hug.app
ServerAlias www.hug.app
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/hug.app/public_html
ErrorLog /var/www/html/hug.app/logs/error.log
CustomLog /var/www/html/hug.app/logs/access.log combined
</VirtualHost>
4.重启apache服务。
sudo systemctl restart apache2