在本文中,我们将逐步指导如何在运行 Linux 的服务器上配置 Web 环境。首先,您需要了解典型的 Web 服务器由几个交互组件组成:
- HTTP服务器
- 编程语言解释器
- 数据库管理系统(DBMS)
要管理您的网站,您还需要设置内容管理系统 (CMS)、用于数据库管理的 Web 界面和 FTP 访问。
让我们考虑在 Linux 上设置一个非常流行的配置 Apache-PHP-MySQL(MariaDB)。我们还将安装 vsftpd ftp 服务器、phpMyAdmin(用于数据库管理的 Web 界面)和内容管理系统 WordPress。
首先请 订购 VPS 服务器 or 专用服务器。例如,我们使用运行 Ubuntu Server 18.04 的具有静态 IP 地址的虚拟服务器。所有命令均由 root 用户运行。
Apache HTTP 服务器配置
1。 安装
apt install apache2
安装完成后,打开浏览器并检查 “http://[服务器的 ip 地址]”

如果您在上面的屏幕截图中看到这样的欢迎页面,则表示您的 HTTP 服务器正在正常运行。
2. 创建测试页面
网站的默认根目录是 “/var/www/html”。您可以在这里找到刚刚看到的欢迎页面。让我们创建一个单独的目录 “/var/www/sites” 用于虚拟主机和子文件夹 “/var/www/sites/site1” 与您的测试网站的索引页一起。
cd /var/www/ mkdir -p sites/site1 echo "<H1>Welcome</H1>" > sites/site1/index.html
结果文件 “/var/www/sites/site1/index.html” 应该只包含一行 html 代码:
<H1>Welcome</H1>
3.Apache 服务器配置
网站的配置文件位于 “/etc/apache2/sites-available/” 目录。让我们为新的虚拟主机创建一个配置文件,并从文件中获取默认配置 “000-默认.conf” 作为基础。
cd /etc/apache2/sites-available/ cp 000-default.conf site1.conf
打开文件 “site1.conf” 并改变 “DocumentRoot” 属性。将您的网站路径作为值,因此在我们的例子中是 “/var/www/sites/site1”

现阶段我们不需要配置多个网站同时运行,因此我们可以禁用默认网站并启用新网站。重新加载服务器配置以应用更改。
a2dissite 000-default a2ensite site1 systemctl reload apache2
打开链接 “http://[服务器的 _ip_address]” 再次确保我们有新页面而不是默认欢迎页面。

我们完成了 HTTP 服务器的配置,可以继续下一步。
FTP服务器配置
1。 安装
让我们安装 ftp 服务器和一个附加包 “db-util”,我们需要配置虚拟用户
apt install vsftpd db-util
2. 创建本地账户
vsftpd 服务器允许我们以非常灵活的方式配置访问权限。对于我们的任务,我们需要为 ftp 用户提供以下内容:
- 完全访问内容 “/var/www/sites/”;
- 禁用以上所有内容 “/var/www/”;
- 与虚拟账户的连接;
创建本地帐户 “虚拟的” 没有登录权限但可以访问主文件夹 “/var/www/”. ftp 用户将使用此帐户连接服务器
useradd -d /var/www virtual
“根” 将成为 “/var/www” 文件夹。为了让 ftp 用户能够修改网站的内容,让我们更改 “/var/www/sites/” 包括子文件夹 “虚拟的”.
chown -R virtual:root /var/www/sites
因此,用户 “虚拟的” 将能够看到的内容 “/var/www/” 并写入 “/var/www/sites/” 子文件夹。
3。 组态
主要配置在文件中 “/etc/vsftpd.conf”,因此我们打开它并进行如下编辑:
#enable virtual users anonymous_enable=NO local_enable=YES guest_enable=YES guest_username=virtual
#configure permission write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES anon_world_readable_only=NO anon_umask=0022 chroot_local_user=YES
#launch settings listen=YES pasv_min_port=30000 pasv_max_port=30999
4.创建数据库
您将需要一个数据库来存储虚拟账户的数据。
首先,让我们创建一个简单的文本文件 “用户.txt” 在主文件夹中,每隔一行保存虚拟用户的访问详细信息(登录名和密码)。例如,我们需要一个具有登录名的虚拟用户 “ftp” 和密码 “Qwe123”. 那么文件将如下所示:
ftp Qwe123
让我们创建数据库
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
让我们修改默认的 PAM 文件 “/etc/pam.d/vsftp” 如下:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
请注意 “pam_userdb.so” 库可能不同,但您可以根据需要进行更改。
重新加载 vsftpd 服务器以应用更改。
systemctl restart vsftpd
我们完成了 FTP 服务器的配置。
连接详情:
- ftp://[服务器的 IP 地址]
- 登录:ftp
- 密码:Qwe123
PHP 服务器配置
1. PHP 的安装
今天 PHP 的最新稳定版本是 php 7.4.5,它未包含在官方 Ubuntu 存储库中。让我们连接第三方存储库并安装最新版本的 PHP。
apt update apt install software-properties-common add-apt-repository ppa:ondrej/php apt update apt install php7.4
2。 检查
为了执行 PHP,网页文件应该具有 “.php” 扩展名。让我们重命名我们的测试页面:
cd /var/www/sites/site1/ mv index.html index.php
将以下 php 行添加到文件 “/var/www/sites/site1/index.php”,因此文件看起来应该像这样:
<H1>Welcome</H1> <?php phpinfo(); ?>
保存更改并在浏览器中检查结果。

如果你看到函数的结果 “phpinfo()”,PHP 解释器已经正常工作了。现在让我们进行下一步。
MySQL(MariaDB)配置
1。 安装
让我们安装 MariaDB 和 MySQL 的 PHP 模块,然后重新加载 Apache。
apt install mariadb-server php-mysql systemctl restart apache2
刷新测试页面,然后转到 PHP 配置表中的 PDO 部分。如果您可以找到该部分 “PDO_mysql”,则说明Mysql的驱动安装正确。

然后我们需要对 MariaDB 进行初始安全配置,并设置 “根” 用户,禁用远程访问并删除所有访客帐户。
mysql_secure_installation
第一步,我们必须输入 “根” 输入用户密码来访问 DBMS,如果没有密码,请按 Enter。由于没有为 “根” 用户安装后,只需按 “输入”.
请注意,MariaDB 中已经有自己的帐户,这些帐户与操作系统帐户无关。因此,我们在 MariaDB 中处理的唯一用户是 “根”.

之后,配置器将要求我们设置 root 用户的密码。输入 “ Y” 确认并输入新密码。在我们的例子中,它是 “Qwe123”

回复 “ Y” 回答直到最后剩下的所有问题。
配置完成!
MariaDB 访问详细信息:
- 登录:root
- 密码:Qwe123
phpMyAdmin 配置
1。 安装
让我们安装必要的 PHP 扩展 - MBSTRING.
apt install php-mbstring
在官方存储库中只有一个过时的 phpMyAdmin 版本,所以让我们手动安装新版本。
打开项目官网“https://www.phpmyadmin.net/”并下载最新的档案。

将档案复制到服务器 “/var/www/sites/” 使用任何 ftp 客户端的文件夹。
取消存档文件夹并将其重命名为 “phpMyAdmin”. 不要忘记安装 “解压” 实用程序。您可以在取消存档后删除该存档。
apt install unzip cd /var/www/sites/ unzip phpMyAdmin-5.0.2-all-languages.zip mv phpMyAdmin-5.0.2-all-languages phpMyAdmin rm phpMyAdmin-5.0.2-all-languages.zip
创建以下文件夹 “/var/www/sites/phpMyAdmin/tmp” 临时文件并允许所有人访问。如果不这样做,phpMyAdmin 将报告拒绝访问临时文件夹。
cd /var/www/sites/phpMyAdmin/ mkdir tmp chmod 777 tmp
2. 创建别名
由于phpMyAdmin不是一个单独的虚拟主机,并且位于根目录之外,因此我们来配置别名。
打开文件 “/etc/apache2/mods-available/alias.conf” 并添加这一行:
Alias /pma “/var/www/sites/phpMyAdmin"
在这一部分中:
<IfModule alias_module> </IfModule>

重新加载 Apache 以应用更改。
systemctl reload apache2
别名已设置,因此我们可以在这里访问 phpMyAdmin “http://[服务器的 ip 地址]/pma”。
3.准备数据库
由于我们在 MariaDB 的初始配置期间限制使用 root 用户,因此我们必须创建一个具有所有权限的新帐户,用于访问 phpMyAdmin。
此外,为了启用 phpMyAdmin 的附加功能,我们需要一个服务数据库和一个访问帐户。
让我们创建帐户
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
请注意,第二个请求中的数据库名称在 back sparks “… ON `phpmyadmin`.* 发送至‘pma’@‘localhost’,识别为…”,
结果将在 MariaDB 中创建两个帐户:
- 登录名:pma,密码:Qwe123 完全访问权限,将用于登录 phpMyAdmin
- 登录名:pmaservice,密码:Qwe123 需要服务帐户才能使用附加功能
下一步,我们将在配置文件中设置这些详细信息 “config.inc.php”.
然后我们需要从文件导入数据库 “phpMyAdmin/sql/create_tables.sql”.
让我们在 phpMyAdmin 的帮助下导入它。
打开链接 “http://[服务器的 ip 地址]/pma”
输入登录名 “pma” 和密码 “Qwe123”
在MyCAD中点击 软件更新 “进口”,单击“ “选择文件” 并选择文件 ”sql/create_tables.sql” 在 phpMyAdmin 的根目录中。这应该是你电脑上的文件夹 “phpMyAdmin” 包含文件。如有必要,请将其解压。

点击 “下一个” 开始导入。
4。 组态
我们从模板中复制配置文件
cd /var/www/sites/phpMyAdmin/ cp config.sample.inc.php config.inc.php
让我们打开配置文件 “/var/www/sites/phpMyAdmin/config.inc.php” 并做以下更改:
为该属性设置一个随机的 32 个字符的值 “$cfg['blowfish_secret']”. 使用任何密码生成器。

删除所有行的注释 “phpMyAdmin 配置存储设置” 部分并设置 MariaDB 服务账户的登录名和密码 “控制用户” 和 “控制通行证” 属性。在我们的例子中,它是 服务 和 qwe123.

保存更改。
phpMyadmin 的访问详细信息:
- http://[server’s_ip_address]/pma/
- 登录名:pma
- 密码:Qwe123
如何在 Linux 服务器上安装和配置 WordPress
1. WordPress 软件包和文件放置
前往WP官方网站“https://ru.wordpress.org/”并将档案下载至本地电脑。
将档案上传到服务器 “/var/www/sites/” 文件夹并将其解压到 “ WordPress的“文件夹。
复制内容 “/var/www/sites/wordpress/” 根文件夹 “/var/www/sites/site1/” 网站。
由于我们通过具有 root 权限的控制台复制了文件,因此让我们更改 “/var/www/sites/” 文件夹包含以下内容 “虚拟的”. 这是通过客户端启用 ftp 连接的完全访问权限所必需的。
cd /var/www/sites/ tar -xzvf wordpress-5.4-ru_RU.tar.gz cp -R wordpress/* site1/ chown -R virtual:root /var/www/sites
2.为 WordPress 创建数据库
登录 phpMyAdmin 并单击“创建数据库”。指定任意数据库名称,在我们的例子中为“wordpress_db”,然后单击“创建”按钮。

在左侧部分选择新数据库并单击 “特权”

然后点击 “添加用户账户”.
输入登录名和密码(服务 / qwe123)在打开的窗口中,检查 “授予 wordpress_db 中的所有权限” 并点击 “下一个”

在下一页上点击 “全部取消” 重置数据库级别的所有权限并单击 “下一个”.

3. Linux 服务器上的 WordPress 配置
转到网站的根目录并从模板中复制配置文件
cd /var/www/sites/site1/ cp wp-config-sample.php wp-config.php
打开 “wp-config.php” 文件并输入我们在上一步创建的数据库连接参数并保存更改。

4. 安装 CMS WordPress
在浏览器中打开以下链接 “http://[服务器的 ip 地址]/wp-admin/install.php”.
填写所有字段并点击 “安装 WordPress”。设置随机用户名和密码。在我们的例子中,它是 管理员 和 qwe123 因此。
这些详细信息将用于访问 WordPress。

安装完成后,打开链接 “http://[服务器的 ip 地址]/wp-login.php”,输入访问详细信息,然后登录WordPress。

您应该在主页上看到其中一个 WordPress 模板。

配置已完成。
WordPress 访问详细信息:
- http://[server’s_ip_address]/wp-login.php
- 登录名:wpadmin
- 密码:Qwe123