介绍
在这个快速启动指南中,我们将在Ubuntu 20.04服务器上安装一个LAMP堆栈。
对于本教程的更详细版本,以及每个步骤的更多解释,请参阅 [如何在Ubuntu 20.04上安装Linux,Apache,MySQL,PHP(LAMP)堆栈(LINK0)]。
前提条件
要遵循本指南,您需要作为sudo
用户访问 Ubuntu 20.04 服务器。
步骤 1 - 安装 Apache
更新您的包管理器缓存,然后安装 Apache:
1sudo apt update
2sudo apt install apache2
安装完成后,您需要调整防火墙设置,以便在您的服务器上允许 HTTP 流量。
1sudo ufw allow in "Apache"
随着新增的防火墙规则,您可以通过从您的 Web 浏览器访问服务器的公共 IP 地址或域名来测试服务器是否正在运行。
第2步:安装MySQL
我们现在将安装MySQL,这是一个流行的PHP环境中使用的数据库管理系统。
再次,使用apt
来获取和安装此软件:
1sudo apt install mysql-server
当安装完成后,建议您运行一个安全脚本,该脚本是预先安装的MySQL。
1sudo mysql_secure_installation
这将询问您是否要配置验证密码插件
。回答Y
为是
,或其他任何事情,以继续而不启用。
接下来,您的服务器将要求您选择并确认MySQL root**用户的密码,尽管MySQL root用户的默认身份验证方法不允许使用密码,即使设置了密码,您也应该在这里定义一个强大的密码作为额外的安全措施。
对于其他问题,按Y
并在每个提示键中按ENTER
键。
<$>[note]
注: 在本文写作时,原始MySQL PHP库 mysqlnd
不支持 caching_sha2_authentication
,是MySQL 8的默认身份验证方法。因此,在创建MySQL 8上的PHP应用程序的数据库用户时,您需要确保它们配置为使用‘mysql_native_password’而不是。请参阅我们在Ubuntu 20.04上的详细LAMP的第6步(https://andsky.com/tech/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-20-04# step-6-%E2%80%94-testing-database-connection-from-php-(optional)指南,以了解如何做到这一点。
步骤三:安装PHP
要安装 PHP 及其依赖,请运行:
1sudo apt install php libapache2-mod-php php-mysql
一旦安装完成,您可以运行以下命令来确认您的PHP版本:
1php -v
1[secondary_label Output]
2PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS )
3Copyright (c) The PHP Group
4Zend Engine v3.4.0, Copyright (c) Zend Technologies
5 with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
步骤4:为您的网站创建虚拟主机
在本指南中,我们将设置一个名为 your_domain 的域名,但您应该 ** 用自己的域名代替它。
在 Ubuntu 20.04 上,有一个默认启用的服务器块配置为从 /var/www/html
目录中服务的文档,而不是修改 /var/www/html
,我们将为 your_domain 网站创建一个 /var/www
中的目录结构,如果客户端请求不匹配任何其他网站,则将 /var/www/html
置于默认目录中。
创建 your_domain 的目录如下:
1sudo mkdir /var/www/your_domain
接下来,与$USER
环境变量分配目录的所有权,该变量将参考您的当前系统用户:
1sudo chown -R $USER:$USER /var/www/your_domain
然后,使用您偏好的命令行编辑器在Apache的可用网站
目录中打开一个新的配置文件:
1sudo nano /etc/apache2/sites-available/your_domain.conf
这将创建一个新的空格文件. 粘贴到以下裸骨配置:
1[label /etc/apache2/sites-available/your_domain.conf]
2<VirtualHost *:80>
3 ServerName your_domain
4 ServerAlias www.your_domain
5 ServerAdmin webmaster@localhost
6 DocumentRoot /var/www/your_domain
7 ErrorLog ${APACHE_LOG_DIR}/error.log
8 CustomLog ${APACHE_LOG_DIR}/access.log combined
9</VirtualHost>
如果您正在使用nano
,您可以通过按CTRL+X
,然后按Y
和ENTER
来做到这一点。
您现在可以使用a2ensite
来启用新的虚拟主机:
1sudo a2ensite your_domain
若要禁用 Apache 的默认网站,请键入:
1sudo a2dissite 000-default
要确保配置文件不包含语法错误,运行:
1sudo apache2ctl configtest
最后,重新加载 Apache,以便这些更改生效:
1sudo systemctl reload apache2
您的新网站现在已启动,但网页根 /var/www/your_domain
仍然是空的. 在该位置创建一个 index.html
文件,以便我们可以测试虚拟主机是否按预期工作:
1nano /var/www/your_domain/index.html
在此文件中包含以下内容:
1[label /var/www/your_domain/index.html]
2<html>
3 <head>
4 <title>your_domain website</title>
5 </head>
6 <body>
7 <h1>Hello World!</h1>
8
9 <p>This is the landing page of <strong>your_domain</strong>.</p>
10 </body>
11</html>
现在,转到您的浏览器并再次访问您的服务器的域名或IP地址:
1http://server_domain_or_IP
你会看到这样的页面:
步骤5:使用Apache测试PHP
现在我们将创建一个PHP测试脚本,以确认Apache能够处理和处理PHP文件的请求。
创建一个名为info.php
的新文件,在您的自定义 Web 根文件夹中:
1nano /var/www/your_domain/info.php
这将打开一个空的文件. 将下列内容添加到文件中:
1[label /var/www/your_domain/info.php]
2<?php
3phpinfo();
完成后,保存并关闭文件。
进入您的网页浏览器并访问您的服务器的域名或IP地址,然后是脚本名称,在这种情况下是info.php:
1http://server_domain_or_IP/info.php
你会看到一个类似于此的页面:
在通过该页面检查有关您的PHP服务器的相关信息后,最好删除您创建的文件,因为它包含有关您的PHP环境 - 和您的Ubuntu服务器的敏感信息。
1sudo rm /var/www/your_domain/info.php
相关教程
以下是有关本教程的更多详细指南的链接: