本文介绍在Debian 10 Buster Server/Desktop(服务器/桌面)操作系统上安装LAMP Stack的方法,即安装Debian 10+Apache+MariaDB和PHP7.3(LAMP堆栈),请在本地计算机或远程服务器上运行Debian 10 OS(参考:安装Debian 10 Buster的方法),然后要注意的是:在Debian上安装软件时需要拥有root权限,你可以在命令开头添加sudo,也可以使用su -命令切换到root用户。
一、更新软件包 在我们安装LAMP stack之前,最好更新存储库和软件包,在Debian 10 OS上运行以下命令: sudo apt update sudo apt upgrade
二、在Debian 10上安装Apache Web Server 输入以下命令以安装Apache Web服务器,apache2-utils包将安装一些有用的实用程序,例如Apache HTTP服务器基准测试工具ab和用户身份验证管理工具htpasswd: sudo apt install apache2 apache2-utils
安装完成后,应该自动启动Apache,使用systemctl检查其状态: systemctl status apache2 样本输出:
如果它没有运行,请使用systemctl启动它: sudo systemctl start apache2 让Apache在启动时自动启动: sudo systemctl enable apache2 检查Apache版本: sudo apache2 -v 输出: Server version: Apache/2.4.38 (Debian) Server built: 2019-04-07T18:15:40 现在,在浏览器地址栏中输入Debian 10服务器的公共IP地址,应该看到“It works!”网页,这意味着Apache Web服务器正常运行,如果要在本地Debian 10计算机上安装LAMP,则应在浏览器地址栏中输入127.0.0.1或localhost:
如果连接被拒绝或无法完成,则可能存在防火墙阻止对TCP 80端口的传入请求,如果使用iptables防火墙,则需要运行以下命令以打开TCP 80端口: sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT 如果使用的是UFW防火墙,请运行此命令以打开TCP 80端口: sudo ufw allow http 参考:Debian、Ubuntu、Linux Mint系统中的UFW防火墙入门教程。 现在我们需要将www-data(Apache用户)设置为文档根目录(也称为Web根目录)的所有者,默认情况下,它由root用户拥有: sudo chown www-data:www-data /var/www/html/ -R
三、在Debian 10上安装MariaDB数据库服务器 MariaDB是MySQL的直接替代品,输入以下命令将其安装在Debian 10上: sudo apt install mariadb-server mariadb-client 参考:在Debian 10(Buster)上安装MariaDB 10.4的方法。 安装完成后,应自动启动MariaDB服务器,使用systemctl检查其状态: systemctl status mariadb 输出:
如果它没有运行,请使用以下命令启动它: sudo systemctl start mariadb 要使MariaDB在引导时自动启动,请运行: sudo systemctl enable mariadb 现在运行安装后安全性脚本: sudo mysql_secure_installation 当它要求你输入MariaDB root密码时,请按Enter键,因为尚未设置root密码,然后输入y以设置MariaDB服务器的root密码:
接下来,你只需按Enter即可回答所有剩余问题,这将删除匿名用户,禁用远程root登录并删除测试数据库,此步骤是MariaDB数据库安全性的基本要求(注意字母Y是大写的,这意味着它是默认答案):
默认情况下,Debian上的MaraiDB软件包使用unix_socket来验证用户登录,这基本上意味着你可以使用操作系统的用户名和密码登录MariaDB控制台,因此,可以运行以下命令登录而不提供MariaDB root密码: sudo mariadb -u root 要么: sudo mysql -u root 要退出,请运行: exit; 检查MariaDB服务器版本信息: mariadb --version 输出: mariadb Ver 15.1 Distrib 10.3.15-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
四、在Debian 10上安装PHP7.3 在选写本文时,PHP7.3是PHP的最新稳定版本,与以前的版本相比,性能略有提升,输入以下命令从Debian 10存储库安装PHP7.3: sudo apt install php7.3 libapache2-mod-php7.3 php7.3-mysql php-common php7.3-cli php7.3-common php7.3-json php7.3-opcache php7.3-readline 启用Apache php7.3模块,然后重启Apache Web服务器: sudo a2enmod php7.3 sudo systemctl restart apache2 检查PHP版本信息: php --version 输出: PHP 7.3.4-2 (cli) (built: Apr 13 2019 19:05:48) ( NTS ) 要使用Apache服务器测试PHP脚本,我们需要使用命令行文本编辑器(如Nano)在Web根目录中创建info.php文件: sudo nano /var/www/html/info.php 将以下PHP代码粘贴到文件中: <?php phpinfo(); ?> 保存并关闭文件。(要在Nano文本编辑器中保存文件,请按Ctrl+O,然后按Enter确认,要退出,请按Ctrl+X。) 现在在浏览器地址栏中输入server-ip-address/info.php,将sever-ip-address替换为你的实际IP,如果你在本地计算机上按照本教程操作,请输入127.0.0.1/info.php或localhost/info.php。 应该看到服务器的PHP信息,这意味着PHP脚本可以与Apache Web服务器一起正常运行,可以找到Zend OPcache已启用:
接下来使用Apache运行PHP-FPM。 基本上有两种方法可以使用Apache Web服务器运行PHP代码: 1、Apache PHP module 2、PHP-FPM 在上面的步骤中,PHP7.3模块用于处理PHP代码,这通常很好,但在某些情况下,需要使用PHP-FPM运行PHP代码。 禁用Apache PHP7.3模块: sudo a2dismod php7.3 安装PHP-FPM: sudo apt install php7.3-fpm 启用proxy_fcgi和setenvif模块: sudo a2enmod proxy_fcgi setenvif 启用/etc/apache2/conf-available/php7.3-fpm.conf配置文件: sudo a2enconf php7.3-fpm 重新启动Apache以使更改生效: sudo systemctl restart apache2 现在,如果在浏览器中刷新info.php页面,你会发现Server API已更改为FPM/FastCGI,这意味着Apache Web服务器将使用PHP-FPM运行PHP代码:
至此,你已在Debian 10 Buster上成功安装了Apache、MariaDB和PHP7,为了你的服务器安全,应该立即删除info.php文件,以防止窥探: sudo rm /var/www/html/info.php 到这里,在Debian 10 Buster上安装LAMP stack的过程全部结束了。
相关主题 |