在Debian 10 Server/Desktop上,如何安装LAMP
杨和超
・8 分钟阅读
本教程将向您展示如何在Debian 10 Buster上安装Apache,MariaDB和PHP7.3(LAMP)。
步骤1:更新软件包
在安装LAMP堆栈之前,最好更新存储库和软件包,在Debian 10 OS上运行以下命令。
sudo apt update sudo apt upgrade
步骤2:在Debian 10上安装Apache Web服务器
输入以下命令安装Apache Web服务器,apache2-utils
软件包将安装一些有用的实用工具,例如Apache HTTP服务器基准测试工具ab
和用户身份验证管理工具htpasswd
。
sudo apt install apache2 apache2-utils
安装后,Apache应该自动启动,用systemctl
检查它状态。
systemctl status apache2
示例输出:
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-07-11 13:30:35 UTC; 4min 31s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 17962 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 17966 (apache2)
Tasks: 55 (limit: 545)
Memory: 4.8M
CGroup: /system.slice/apache2.service
├─17966 /usr/sbin/apache2 -k start
├─17967 /usr/sbin/apache2 -k start
└─17968 /usr/sbin/apache2 -k start
如果它没有运行,使用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地址,如果在本地Debian 10计算机上安装LAMP,那么你应该在浏览器地址栏中输入127.0.0.1
或localhost
。
如果连接被拒绝或无法完成,就可能有防火墙阻止对TCP端口80的传入请求。如果使用的是iptables firewall,那么你需要运行以下命令来打开TCP端口80.
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
如果使用UFW firewall,就运行此命令打开TCP端口80.
sudo ufw allow http
sudo chown www-data:www-data /var/www/html/ -R
如果在DNS中无法解析系统主机名,那么在运行sudo apache2ctl -t
命令后看到以下错误。
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message
为了解决这个问题,我们可以在Apache中设置全局ServerName
,使用Nano命令行文本编辑器创建新的配置文件。
sudo nano /etc/apache2/conf-available/servername.conf
在这个文件中添加以下行。
ServerName localhost
保存,并管理文件,要在Nano text编辑器中保存文件,请按Ctrl+O
,然后按Enter确认,要退出,请按,然后启用这个配置文件。
sudo a2enconf servername.conf
重新加载Apache以便让更改生效。
sudo systemctl reload apache2
现在,如果再次运行sudo apache2ctl -t
命令,你将看不到上面的错误消息。
步骤3:在Debian 10上安装MariaDB数据库服务器
MariaDB是MySQL的替代品,输入以下命令在Debian 10上安装它。
sudo apt install mariadb-server mariadb-client
安装后,MariaDB服务器应该自动启动,使用systemctl检查它状态。
systemctl status mariadb
输出:
● mariadb.service - MariaDB 10.3.15 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-07-11 13:57:03 UTC; 16s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 18566 (mysqld)
Status:"Taking your SQL requests now..."
Tasks: 31 (limit: 545)
Memory: 73.9M
CGroup: /system.slice/mariadb.service
└─18566 /usr/sbin/mysqld
如果它没有运行,请使用以下命令启动它:
sudo systemctl start mariadb
要使MariaDB在引导时自动启动,请运行
sudo systemctl enable mariadb
现在运行安装后安全脚本。
sudo mysql_secure_installation
默认情况下,Debian上的MaraiDB包使用unix_套接字来验证用户登录,这意味着你可以使用操作系统的用户名和密码登录到MariaDB控制台,
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
步骤4: 在debian 10上安装PHP7.3
输入以下命令从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 )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.4-2, Copyright (c) 1999-2018, by Zend Technologies
sudo nano /var/www/html/info.php
将以下PHP代码粘贴到文件中。
<?php phpinfo(); ?>
保存,并管理文件,要在Nano text编辑器中保存文件,请按Ctrl+O
,然后按Enter确认,要退出,请按Ctrl+X
。
现在在浏览器地址栏中,输入server-ip-address/info.php
,用你的实际IP替换sever-ip-address
,如果在本地计算机上,请键入127.0.0.1/info.php
或localhost/info.php
。
应该可以看到服务器的PHP信息。