在Fedora 24上安装Apache,MariaDB和PHP-FPM(LAMP堆栈)

Fedora 24于2016年6月21日发布。在本教程中,我们将研究如何在Fedora 24上安装Apache,MariaDB和PHP-FPM(LAMP堆栈)。

步骤1:安装Apache HTTP Server

输入此命令以安装Apache HTTP服务器。

sudo dnf install httpd -y

默认情况下,将Apache安装在Fedora上时不会自动启动。 因此,让我们从systemctl开始。

sudo systemctl start httpd

而且,当Fedora 24重新启动时,使Apache自动启动也是一个好主意。

sudo systemctl enable httpd

现在让我们检查其状态。

systemctl status httpd

输出:

● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2016-06-22 22:33:33 EDT; 3min 24s ago
 Main PID: 3944 (httpd)
   Status: "Total requests: 0; Idle/Busy workers 100/0;Requests/sec: 0; Bytes served/sec: 0 B/sec"
    Tasks: 11 (limit: 512)

我们可以看到Apache正在运行并且该服务已启用。

检查Apache版本。

httpd -v

输出:

Server version: Apache/2.4.18 (Fedora)
Server built: Feb 4 2016 03:01:27

现在,在浏览器的地址栏中,输入Fedora的IP地址。 您应该看到Fedora测试网页,这意味着Apache Web服务器正在正确运行。

如果要在本地Fedora 24盒子上安装LAMP,只需键入 127.0.0.1 要么 localhost 在浏览器地址栏中。

apache fedora测试页

如果看不到以上页面,则可能需要调整您的 防火墙设置 允许 远程客户端 访问您的网页。

sudo firewall-cmd --permanent --add-service=http

sudo firewall-cmd --permanent --add-service=https

重新启动防火墙

sudo firewall-cmd --reload

现在访问您的Web服务器,您应该看到Fedora测试页面。

最后,我们需要使apache(Apache用户)成为Web根目录的所有者。

sudo chown apache /var/www/html/ -R

使用Apache,您的Fedora服务器可以托管静态html文件,但是为了服务WordPress网站等动态网站,我们需要安装MariaDB和PHP。

LAMP步骤2:安装MariaDB

MariaDB是MySQL的直接替代品。 它是由MySQL团队的前成员开发的,他们担心Oracle可能会将MySQL变成封闭源代码产品。 许多Linux发行版和公司已迁移到MariaDB。 因此,我们将安装MariaDB而不是MySQL。

sudo dnf install mariadb-server mariadb

安装后,我们需要启动它并使它能够在系统启动时启动。

sudo systemctl start mariadb
sudo systemctl enable mariadb

检查状态:

systemctl status mariadb

输出:

● mariadb.service - MariaDB 10.1 database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2016-06-22 23:15:14 EDT; 5s ago
  Process: 7504 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS)
  Process: 7434 ExecStartPre=/usr/libexec/mysql-prepare-db-dir %n (code=exited, status=0/SUCCESS)
  Process: 7404 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS)
 Main PID: 7470 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 25 (limit: 512)
   CGroup: /system.slice/mariadb.service
           └─7470 /usr/libexec/mysqld --basedir=/usr

检查版本:

[[email protected] ~]$ mysql --version
mysql Ver 15.1 Distrib 10.1.14-MariaDB, for Linux (i686) using EditLine wrapper

现在运行安装后安全脚本。

sudo mysql_secure_installation

当要求您输入MariaDB根密码时,请按Enter键,因为尚未设置根密码。 然后输入 y 设置MariaDB服务器的根密码。

之后,您只需按Enter即可回答所有剩余的问题。 这将删除匿名用户,禁用远程root登录并删除测试数据库。 此步骤是MariaDB数据库安全性的基本要求。

步骤3:安装PHP

输入以下命令以安装PHP和PHP模块。

sudo dnf install php php-cli php-mysql php-common -y

完成后,我们需要重新启动Apache才能处理PHP代码。

sudo systemctl restart httpd

步骤4:测试PHP

创建一个 test.php 文件放在文档根目录中。

sudo nano /var/www/html/test.php

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

<?php phpinfo(); ?>

保存并关闭文件。 现在,在浏览器地址栏中,输入 server-ip-address/test.php。 更换sever-ip-address 与您的实际IP。 您应该看到服务器的PHP信息。 这意味着PHP处理很好。

在fedora 24上测试php

Apache PHP模块与PHP-FPM

现在,基本上有两种方法可以通过Apache Web服务器运行PHP代码:Apache PHP模块和PHP-FPM。 上面的配置使用Apache PHP模块来处理PHP代码(从php信息中可以看出,服务器API是Apache 2.0处理程序)。

为了使用PHP-FPM运行PHP代码,我们需要启用Apache mod_proxy_fcgi 模块。 幸运的是,如您在此命令中所见,默认情况下已启用它

apachectl -M

您可以从输出中找到以下行,这意味着 mod_proxy_fcgi 模块已启用。

proxy_fcgi_module (shared)

现在安装php-fpm。

sudo dnf install php-fpm

启动并启用php-fpm服务。

sudo systemctl start php-fpm

sudo systemctl enable php-fpm

然后编辑虚拟主机配置文件。 本教程以默认虚拟主机为例。

sudo nano /etc/httpd/conf/httpd.conf

将以下行粘贴到此文件的末尾。

ProxyPassMatch ^/(.*.php(/.*)?)$ unix:/run/php-fpm/www.sock|fcgi://localhost/var/www/html/

保存并关闭文件。 然后重新启动Apache。

sudo systemctl restart httpd

现在,如果您检查 test.php 文件在浏览器中,您会发现Server API是FPM / FastCGI,这意味着Apache Web服务器会将PHP请求传递给PHP-FPM。

fedora的Apache的PHP-FPM

为了服务器的安全,您应该删除 test.php 立即归档。

恭喜! 您已经在Fedora 24上成功安装了Apache,MariaDB和PHP-FPM(LAMP堆栈)。

随时欢迎提出问题或建议。 如果您发现此帖子有用,请🙂在社交媒体上与您的朋友分享! 请继续关注更多Linux教程。

Sidebar