如何在FreeBSD 10.1安装Apache,MySQL和PHP(FAMP)

一个援外物资栈,它类似于Linux上的LAMP,是通常安装在一起,使一台FreeBSD服务器托管动态网站和网络应用的一组开源软件。援外物资是代表的FreeBSD(操作系统),Apache(Web服务器)时,MySQL(数据库服务器),和PHP(用于处理动态PHP内容)的首字母缩写。 在本指南中,我们将得到安装在FreeBSD的10.1云服务器中使用PKG,FreeBSD的包管理器一个援外物资。

介绍

与Linux上的LAMP类似的FAMP是一组开放源代码软件,通常安装在一起以使FreeBSD服务器能够托管动态网站和Web应用程序。 援外物资是代表适用于F reeBSD(操作系统),A帕什(Web服务器),M ySQL(数据库服务器)和P惠普(处理动态PHP内容)的首字母缩写。

在本指南中,我们将得到安装在FreeBSD的10.1云服务器使用援外物资堆pkg ,FreeBSD的包管理器。

先决条件

在开始本指南之前,您应该有一个FreeBSD 10.1服务器。 此外,您必须连接到您的FreeBSD服务器具有超级用户权限的用户(即允许使用sudo或者切换到root用户)。

第一步 - 安装Apache

Apache Web服务器是目前世界上最流行的Web服务器,这使它成为托管网站的理想选择。

我们可以很容易地使用FreeBSD的包管理器安装Apache, pkg 软件包管理器允许我们从FreeBSD维护的软件库中安装大多数软件。 您可以了解更多有关如何使用pkg这里

要使用安装Apache 2.4 pkg ,使用这个命令:

sudo pkg install apache24

输入y在确认提示。

这将安装Apache及其依赖项。

为了使Apache作为服务,加上apache24_enable="YES"/etc/rc.conf的文件。 我们将利用这个sysrc命令来做到这一点:

sudo sysrc apache24_enable=yes

现在启动Apache:

sudo service apache24 start

您可以立即进行即时检查,以验证一切都按计划通过访问您的服务器的公共IP地址在您的网络浏览器(请参阅下一个标题下的说明,以了解您的公共IP地址是如果你没有这个信息已经):

http://your_server_IP_address/

您将看到默认的FreeBSD Apache网页,用于测试目的。 它应该说:“It Works!”,它表示您的Web服务器已正确安装。

如何查找您的服务器的公共IP地址

如果你不知道你的服务器的公共IP地址是什么,有很多方法你可以找到它。 通常,这是您用于通过SSH连接到服务器的地址。

如果您使用的是DigitalOcean,您可以在控制面板中查看服务器的IP地址。 您也可以使用DigitalOcean元数据服务,从服务器本身,使用此命令: curl -w "\n" http://169.254.169.254/metadata/v1/interfaces/public/0/ipv4/address

查找IP地址更通用的方法是使用ifconfig命令,服务器本身上。 ifconfig命令将打印出有关网络接口的信息。 为了将输出限制为仅服务器的公共IP地址,请使用此命令(请注意突出显示的部分是网络接口的名称,并且可能会有所不同):

ifconfig vtnet0 | grep "inet " | awk '{ print $2 }'

现在您有公共IP地址,您可以在Web浏览器的地址栏中使用它来访问您的Web服务器。

第二步 - 安装MySQL

现在我们已经启动并运行了Web服务器,现在是安装MySQL,关系数据库管理系统的时候了。 MySQL服务器将组织并提供对我们的服务器可以存储信息的数据库的访问。

同样,我们可以用pkg获取并安装我们的软件。

要使用安装MySQL 5.6 pkg ,使用这个命令:

sudo pkg install mysql56-server

输入y在确认提示。

这将安装MySQL服务器和客户端软件包。

为了使MySQL服务器作为服务,加上mysql_enable="YES"/etc/rc.conf的文件。 sysrc命令将做到这一点:

sudo sysrc mysql_enable=yes

现在启动MySQL服务器:

sudo service mysql-server start

现在您的MySQL数据库正在运行,您将需要运行一个简单的安全脚本,它将删除一些危险的默认值,并稍微限制对数据库系统的访问。 通过运行以下命令启动交互式脚本:

sudo mysql_secure_installation

该提示将要求您输入当前root密码(MySQL的管理员用户, 根目录 )。 既然你刚刚安装的MySQL,你最有可能不会有一个,所以将其留空,按RETURN 然后提示将询问您是否要设置root密码。 来吧,进入Y ,并按照指示:

Enter current password for root (enter for none): [RETURN]
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorization.

Set root password? [Y/n] Y
New password: password
Re-enter new password: password
Password updated successfully!

对于剩余的问题,您应该简单地打RETURN在每个提示键接受默认值。 这将删除一些示例用户和数据库,禁用远程根登录,并加载这些新规则,以便MySQL立即尊重我们所做的更改。

此时,您的数据库系统现已设置,我们可以继续。

第三步 - 安装PHP

PHP是我们的设置的组件,它将处理代码以显示动态内容。 它可以运行脚本,连接到MySQL数据库以获取信息,并将处理的内容交给Web服务器显示。

我们可以再次利用pkg系统中安装我们的组件。 我们要包括mod_phpphp-mysql ,和php-mysqli软件包。

要使用安装PHP 5.6 pkg ,运行以下命令:

sudo pkg install mod_php56 php56-mysql php56-mysqli

输入y在确认提示。 这将安装php56mod_php56php56-mysql ,和php56-mysqli包。

现在使用此命令将示例PHP配置文件复制到位:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

现在运行rehash命令重新生成你的安装可执行文件系统的缓存信息:

rehash

在使用PHP之前,您必须将其配置为使用Apache。

安装PHP模块(可选)

为了增强PHP的功能,我们可以选择安装一些额外的模块。

要查看PHP 5.6模块和库的可用选项,可以在系统中键入以下内容:

pkg search php56

结果将主要是PHP 5.6模块,您可以安装。

mod_php56-5.6.3
php56-5.6.3
php56-bcmath-5.6.3
php56-bz2-5.6.3
php56-calendar-5.6.3
php56-ctype-5.6.3
php56-curl-5.6.3
php56-dba-5.6.3
php56-dom-5.6.3
php56-exif-5.6.3
...

要获得有关每个模块的更多信息,您可以搜索互联网,或者您可以通过键入以下内容查看包的详细说明:

pkg search -f package_name

会有大量的输出,其中一个域名为评论这将有该模块提供的功能的解释。

例如,为了找出什么php56-calendar包呢,我们可以输入:

pkg search -f php56-calendar

除了大量的其他信息,你会发现这样的东西:

php56-calendar-5.6.3
Name           : php56-calendar
Version        : 5.6.3
...
Comment        : The calendar shared extension for php
...

如果,研究之后,你决定,你想安装一个软件包,你可以使用这样做pkg install命令就像我们一直在做的其他软件。

例如,如果我们决定php56-calendar是,我们需要,我们可以输入一些:

sudo pkg install php56-calendar

如果你想在同时安装多个模块,你可以做,通过列出各一个,用空格隔开,继pkg install命令,如下所示:

sudo pkg install package1 package2 ...

第四步 - 配置Apache使用PHP模块

之前,Apache将处理PHP的页面,我们必须将其配置为使用mod_php

打开Apache配置文件:

sudo vi /usr/local/etc/apache24/Includes/php.conf

首先,我们将配置Apache来加载index.php中加入以下行默认文件:

<IfModule dir_module>
    DirectoryIndex index.php index.html

接下来,我们将配置Apache以使用PHP处理器处理请求的PHP文件。 将这些行添加到文件的末尾:

    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

保存并退出。

现在重新启动Apache以使更改生效:

sudo service apache24 restart

此时,您的FAMP已安装和配置。 现在让我们测试你的PHP设置。

第五步 - 测试PHP处理

为了测试我们的系统是否正确配置为PHP,我们可以创建一个非常基本的PHP脚本。

我们称这个脚本info.php 为了让Apache找到该文件,并正确地服务于它,它必须在非常具体的directory-- 的DocumentRoot,可呈现就是Apache会查找文件,当用户访问Web服务器下保存。 的DocumentRoot的位置,我们修改先前(Apache的配置文件中指定/usr/local/etc/apache24/httpd.conf )。

默认情况下,DocumentRoot的设置为/usr/local/www/apache24/data 我们可以创造info.php通过键入位置下的文件:

sudo vi /usr/local/www/apache24/data/info.php

这将打开一个空白文件。 将此PHP代码插入到文件中:

<?php phpinfo(); ?>

保存并退出。

现在我们可以测试我们的Web服务器是否可以正确显示由PHP脚本生成的内容。 要尝试这个,我们只需要在我们的网络浏览器访问此页面。 您将需要您的服务器的公共IP地址。

您要访问的地址将是:

http://your_server_IP_address/info.php

您看到的页面应该如下所示:

FreeBSD info.php

从PHP的角度来看,这个页面基本上提供了你的服务器的信息。 它对于调试和确保您的设置正确应用非常有用。

如果这是成功的,那么你的PHP工作正常。

您可能想要在此测试后删除此文件,因为它实际上可能会向未经授权的用户提供有关您的服务器的信息。 为此,您可以键入:

sudo rm /usr/local/www/apache24/data/info.php

如果以后需要再次访问信息,您可以随时重新创建此页面。

结论

现在你已经安装了FAMP,你有很多选择下一步做什么。 基本上,您已经安装了一个平台,将允许您在服务器上安装大多数类型的网站和Web软件。

如果你有兴趣在新的援外物资栈上设置WordPress的,看看这个教程: 如何在FreeBSD 10.1与Apache安装WordPress