如何在 Ubuntu 22.04 中安装 LAMP Apache、MySQL、PHP

How-to-Install-LAMP-Apache-MySQL-PHP-in-Ubuntu-22.04-750x375-1

如何在 Ubuntu 22.04 中安装 LAMP ApacheMySQLPHP。在本指南中,您将学习如何安装 Apache2、MySQL 和 PHP 8.1。

您还将安装一些常见的 PHP 扩展并调整 PHP 配置。安装 PhpMyAdmin,最后您将使用 Let’s Encrypt SSL 保护您的设置并配置 HTTPS 重定向。

此设置在 Google 云上进行了测试,因此它适用于所有云托管服务,例如 AWS、Azure 或任何 VPS 或任何运行 Ubuntu 22.04 的专用服务器。

先决条件

  • 对服务器的 root 访问权限或 sudo 用户。

第 1 步:设置初始化

首先使用以下命令将软件包更新到可用的最新版本。

sudo apt update
sudo apt upgrade

更新设置后,您就可以开始设置。

第 2 步:安装 Apache

使用以下命令安装 Apache。

sudo apt install apache2

这将安装apache2所有必需的依赖项。

第 3 步:设置防火墙

现在,您可以使用 Apache 设置简单防火墙 (UFW),以允许默认 Web 端口上的公共HTTP访问HTTPS

sudo ufw app list

您将看到所有列出的应用程序。

OutputAvailable applications:   Apache   Apache Full   Apache Secure   OpenSSH
  • Apache:此配置文件打开端口80(正常、未加密的网络流量)
  • Apache Full:此配置文件打开端口80(正常、未加密的 Web 流量)和端口443(TLS/SSL 加密流量)
  • Apache Secure:此配置文件仅打开端口443(TLS/SSL 加密流量)
  • OpenSSH:此配置文件打开22用于 SSH 访问的端口。

如果您不打算使用 SSL,则只需启用 Apache 配置文件。

现在我们将启用 Apache Full。

sudo ufw allow OpenSSH
sudo ufw allow 'Apache Full'
sudo ufw enable

使用此命令可以查看UFW的状态。

sudo ufw status

您将看到如下输出。

OutputStatus: active To                         Action      From --                         ------      ---- Apache Full                ALLOW       Anywhere                   OpenSSH                    ALLOW       Anywhere                   Apache Full (v6)           ALLOW       Anywhere (v6)              OpenSSH (v6)               ALLOW       Anywhere (v6)

步骤:4 检查 Apache 安装

由于我们已经在步骤 2 中安装了 Apache,因此它应该会自动启动并且已经启动并运行。

使用以下命令检查 Apache 版本

sudo apachectl -v
Output
Server version: Apache/2.4.52 (Ubuntu)
Server built:   2022-03-25T00:35:40

Apache 中的每个进程都是通过该systemctl命令进行管理的。使用以下命令检查 Apache 的状态。

sudo systemctl status apache2
Output
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-04-29 00:34:49 UTC; 2min 52s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 12782 (apache2)
      Tasks: 55 (limit: 1151)
     Memory: 5.1M
        CPU: 52ms
     CGroup: /system.slice/apache2.service
             ├─12782 /usr/sbin/apache2 -k start
             ├─12784 /usr/sbin/apache2 -k start
             └─12785 /usr/sbin/apache2 -k start

现在我们已经安装了 Apache 并配置了防火墙。

第5步:安装MySQL

在 Ubuntu 22.04 中,Jammy Jellyfish 存储库默认包含 MySQL 8,因此您可以使用命令轻松安装它apt install

sudo apt install mysql-server

安装完成后,MySQL服务将自动启动。要验证 MySQL 服务器是否正在运行,请键入:

sudo service mysql status

输出应显示该服务已启用并正在运行:

● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-04-29 00:38:45 UTC; 11s ago
    Process: 13836 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, statu>
   Main PID: 13844 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 1151)
     Memory: 351.4M
        CPU: 1.043s
     CGroup: /system.slice/mysql.service
             └─13844 /usr/sbin/mysqld

使用以下命令检查 MySQL 版本。

sudo mysql -V
Output
mysql  Ver 8.0.28-0ubuntu4 for Linux on x86_64 ((Ubuntu))

第 6 步:保护 MySQL

MySQL安装附带一个名为的脚本 mysql_secure_installation ,可以让您轻松提高MySQL服务器的安全性。

sudo mysql_secure_installation

系统会要求您配置 VALIDATE PASSWORD PLUGIN 用于测试MySQL用户密码的强度并提高安全性。

如果您想设置验证密码插件,请按此键 y 或按任何其他键进入下一步。

密码验证策略分为低、中、强三个级别。

输入 2 进行强密码验证。

在下一个提示中,系统将要求您为 MySQL root 用户设置密码。

如果您设置了验证密码插件,脚本将显示新密码的强度。类型 y 以确认密码。

接下来,系统会要求您删除匿名用户、限制 root 用户对本地计算机的访问、删除测试数据库并重新加载权限表。您应该回答 y 所有问题。

第7步:安装PHP

默认情况下,Ubuntu 22.04 添加了最新的 PHP 8.1 存储库。因此,您可以使用以下命令安装 PHP。

sudo apt install php8.1-fpm php8.1 libapache2-mod-php8.1 php8.1-common php8.1-mysql php8.1-xml php8.1-xmlrpc php8.1-curl php8.1-gd php8.1-imagick php8.1-cli php8.1-imap php8.1-mbstring php8.1-opcache php8.1-soap php8.1-zip php8.1-intl php8.1-bcmath unzip -y

安装 PHP 后,您可以使用以下命令检查版本。

php -v
Output
PHP 8.1.5 (cli) (built: Apr  7 2022 17:46:26) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.5, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.5, Copyright (c), by Zend Technologies

第8步:配置PHP

现在我们通过更改php.ini文件中的一些值来为 Web 应用程序配置 PHP。

对于带有 Apache 的 PHP 7.4,该php.ini位置将位于以下目录中。

sudo nano /etc/php/8.1/apache2/php.ini

在编辑器内点击F6搜索并更新以下值以获得更好的性能。

upload_max_filesize = 32M post_max_size = 48M memory_limit = 256M max_execution_time = 600 max_input_vars = 3000 max_input_time = 1000

修改 PHP 设置后,您需要重新启动 Apache 才能使更改生效。

第9步:配置Apache

禁用默认 Apache 配置。

sudo a2dissite 000-default

创建网站目录。

sudo mkdir -p /var/www/html/domainname/public

设置正确的权限。

sudo chmod -R 755 /var/www/html/domainname
sudo chown -R www-data:www-data /var/www/html/domainname

创建新的虚拟主机配置。

sudo nano /etc/apache2/sites-available/domainname.conf

将以下配置粘贴到新文件中。

<VirtualHost *:80>
     ServerAdmin admin@domainname.com
     ServerName domainname.com
     ServerAlias www.domainname.com

     DocumentRoot /var/www/html/domainname/public

     <Directory /var/www/html/domainname/public>
         Options Indexes FollowSymLinks
         AllowOverride All
         Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log 
     CustomLog ${APACHE_LOG_DIR}/access.log combined 
 </VirtualHost>

启用新配置。

sudo a2ensite domainname.conf

第10步:安装PhpMyAdmin

PhpMyAdmin是一个轻松管理MySQL数据库的工具。您可以使用以下命令安装它。

sudo apt install phpmyadmin

复制 Apache 的 PhpMyAdmin 配置。

sudo cp /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

启用配置。

sudo a2enconf phpmyadmin.conf

重新启动阿帕奇。

sudo service apache2 restart

现在您已经安装了 PhpMyAdmin,可以通过此路线访问它yourdomain.com/phpmyadmin

第 11 步:安装 Let’s Encrypt SSL

HTTPS 是一种用于服务器(实例)和客户端(Web 浏览器)之间安全通信的协议。由于提供免费 SSL 证书的 Let’s Encrypt 的推出,HTTPS 被所有人采用,也为您的受众提供了信任。

sudo apt install python3-certbot-apache

现在我们已经安装了 Let’s Encrypt for Ubuntu 22.04 的 Certbot,运行此命令来接收您的证书。

sudo certbot --apache --agree-tos --redirect -m youremail@email.com -d domainname.com -d www.domainname.com

此命令将安装免费 SSL、配置重定向到 HTTPS 并重新启动 Apache 服务器。

第12步:更新SSL证书

Let’s Encrypt 提供的证书有效期仅为 90 天,因此您需要经常更新它们。因此,让我们使用以下命令测试续订功能。

sudo certbot renew --dry-run

此命令将测试证书到期时间并配置自动更新功能。

步骤:13:测试设置

完成可行的步骤后,您可以在 Web 目录中创建一个新的测试 PHP 文件。

sudo nano /var/www/html/domainname/public/info.php

将以下代码粘贴到文件中。

<?php phpinfo();

保存文件。

现在继续使用info.phpurl ( domainname.com/info.php) 检查您的域名。

您将看到您的域已重定向到 HTTPS,并查看 PHP 信息详细信息。

结论

现在您已经了解了如何安装 LAMP 堆栈 Ubuntu 22.04。您还学习了如何安装和配置 PhpMyAdmin 以及使用 Let’s Encrypt SSL 保护您的安装。

谢谢你的时间。如果您遇到任何问题或任何反馈,请在下面发表评论。

原创文章,作者:主机说,如若转载,请注明出处:https://www.hostingtalk.cn/how-to-install-lamp-apache-mysql-php-in-ubuntu/

error: 内容保护