如何在Ubuntu 20.04上安装Apache, MySQL和PHP
LAMP技术栈是Linux、Apache、MySQL和PHP的组合,是基于PHP的应用程序的流行的web托管环境。
这里Linux是操作系统,Apache是Apache Foundation开发的流行web服务器,MySQL是用于存储数据的关系数据库管理系统,PHP是广泛使用的编程语言。
本文将在Ubuntu 20.04 LTS (Focal Fossa)系统上安装Apache 2.4、MySQL 8.0和PHP 7.4。
让我们开始安装Ubuntu机器的LAMP技术栈。
准备工作
登录到Ubuntu系统。
ssh Hyman@theitroad
升级当前的软件包到最新版本。
sudo apt update sudo apt upgrade
步骤1 -安装PHP
在Ubuntu 20.04 LTS的默认存储库下可以使用PHP 7.4包。
要在系统上安装PHP,请先更新apt索引,然后在系统上安装它。
sudo apt update sudo apt install -y php7.4
还要安装应用程序所需的其他PHP模块。
sudo apt install php7.4-curl php7.4-gd php7.4-json php7.4-mbstring php7.4-xml
步骤2—安装Apache2
接下来,需要在系统上安装Apache2包。
Apache包在默认的apt存储库下可用。
我们还需要安装 libapache2-mod-php模块来使用Apache2。
输入以下命令来安装它:
sudo apt install apache2 libapache2-mod-php7.4
步骤3 -安装MySQL服务器
默认的Ubuntu 20.04 apt存储库包含MySQL服务器8.0。
最后,安装MySQL数据库的MySQL -server包。
另外,安装PHP - MySQL包以使用PHP使用MySQL支持。
使用以下命令安装它。
sudo apt install mysql-server php7.4-mysql
安装程序将提示输入root密码,这个密码将用于MySQL root用户。
安装MySQL后,执行以下命令对MySQL服务器进行初始设置。
你会看到这个脚本会提示比以前的MySQL版本更多的设置,比如密码验证策略等等。
sudo mysql_secure_installation
Securing the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PASSWORD COMPONENT can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD component? Press y|Y for Yes, any other key for No: y There are three levels of password validation policy: LOW Length >= 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2 Please set the password for root here. New password: Re-enter new password: Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : y Success. Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y Success. By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y - Dropping test database... Success. - Removing privileges on test database... Success. Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y Success. All done!
步骤4 -安装phpMyAdmin(可选)
phpMyAdmin提供了一个用户友好的web界面来管理MySQL数据库服务器。
你可以通过执行以下命令在Ubuntu 20.04上安装phpMyAdmin:
sudo apt install phpmyadmin
安装过程将提示选择要配置的web服务器。
选择“Apache”作为web服务器运行phpMyAdmin。
接下来,它将提示为phpMyAdmin创建数据库,并提示管理用户访问细节。
完成phpMyAdmin安装的所有步骤。
步骤5 -管理服务
我们已经在Ubuntu 20.04 LTS系统上完成了LAMP技术栈的安装。
下面的命令将启动/停止或重新启动使用systemd运行的Apache和MySQL服务。
要重启Apache和MySQL服务,输入:
sudo systemctl restart apache2 sudo systemctl restart mysql
要启动Apache和MySQL服务,输入:
sudo systemctl start apache2 sudo systemctl start mysql
要停止Apache和MySQL服务,输入:
sudo systemctl stop apache2 sudo systemctl stop mysql
第6步-调整防火墙规则
我们可以直接提供一个服务名称,如“http”或“https”来允许。
firewalld使用/etc/services文件确定服务的对应端口。
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https
重新加载规则,使配置生效
sudo firewall-cmd --reload
步骤7 -测试设置
完成所有设置后。
让我们在站点根目录下创建一个 info.php。
包含以下内容。
sudo echo "<?php phpinfo(); ?>" > /var/www/html/info.php
现在在web浏览器中访问该文件。
http://服务器ip/info.php
它包含了服务器上PHP的所有细节。
还可以访问phpMyAdmin
http://服务器ip/phpMyadmin
总结
我们已经成功地在Ubuntu 20.04 LTS系统上配置了web服务器。