Linux

记录在树莓派上编译安装LNMP环境全过程

树莓派体积小巧,但也限制了其性能。这使得在树莓派上只能选择资源占用较小的服务。如果用作HTTP服务器,Apache+MySQL就未免太臃肿了。在这里,推荐的配合是Nginx+MairaDB

1.准备

设备:树莓派3 Model B

系统:raspbian

2.下载Nginx/PCRE/OpenSSL源码包

Nginx:http://nginx.org/en/download.html

PCRE:https://ftp.pcre.org/pub/pcre/

OpenSSL:https://www.openssl.org/source/(不要下载fips版本)

PHP:http://php.net/get/php-7.0.23.tar.gz/from/a/mirror

MairaDB:https://downloads.mariadb.org/mariadb/10.2.8/

3.安装

创建一个目录用来存放源码,然后将下载的源码解压后放进去:

1.安装PCRE/Nginx

进入PCRE源码目录,执行
./configure

进入Nginx源码目录,编译安装Nginx:

其中在
--with-pcre=
指定的是pcre的源码目录。
--with-openssl=
指向openssl的源码目录。

然后开始编译:

如果编译时出现问题,可能是PCRE源码的问题,改用apt-get安装pcre即可:
sudo apt-get install libpcre3 libpcre3-dev
,然后在Nginx源码目录下执行
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --with-http_ssl_module --with-openssl=/openssl
,再执行
make && sudo make install

然后静静等待编译完成。

编译完成后,启动Nginx:

在浏览器中访问树莓派的地址,出现下图说明安装成功。

2.安装PHP

①apt-get安装(via:https://segmentfault.com/a/1190000008664157)

在/etc/apt/source.list中添加一行:

接着创建一个文件 sudo vi /etc/apt/preferences,添加以下内容:

更新源,安装PHP:

安装好之后执行 php -v 可以查看版本。

②源码安装

将下载的源码解压到之前创建的目录中:

安装依赖:

添加php用户和组:

编译配置:

时间还是有些长的,耐心等待,configure完后就可以继续编译了:

配置php-fpm:

启动php-fpm:

3.安装MairaDB/MySQL

①apt-get安装MairaDB

安装过程中会提示设置MariaDB的密码:

稍等,MairaDB就安装完毕了。使用以下命令就可以登陆MariaDB:

②编译安装MariaDB

MariaDB不使用./configure的方式编译配置,而是使用cmake,所以需要先安装cmake工具。

编译cmake的过程有些漫长,耐心等待。完成后查看是否已经正常安装:

开始安装MairDB,首先添加用户和组:

检查创建的用户:

到官网上下载MaiaDB源码:https://downloads.mariadb.org/mariadb/10.2.9/

下载完后解压,进入源码目录。使用cmake配置源码:

编译安装(
-j4
:同时使用4线程,这是为了提高编译的速度,编译时会同时跑满树莓派的4个核心,所以如果你的树莓派没有散热措施,建议不要使用这个选项):

这个过程仍然十分漫长……两个小时左右。(如果可以的话,建议用交叉编译环境)

完成安装后,要对MairaDB进一步地配置:

复制配置文件:

修改root用户密码:

附录

PHP的推荐配置文件(via:TypeCodes)

php.ini

php.ini是php运行核心配置文件:

php-fpm.conf

php-fpm.conf是php-fpm进程服务的配置文件:

www.conf(位于php-fpm.d目录)

www.conf这是php-fpm进程服务的扩展配置文件:

适用于ownCloud/Nextcloud的Nginx配置文件

 

(0)

本文由 橙叶博客 作者:FrankGreg 发表,转载请注明来源!

关键词:,

热评文章

评论:

3 条评论,访客:3 条,博主:0 条
  1. somebody
    somebody发布于: 

    发现一处错误:apt-get install maraidb-server
    应该是:apt-get install mariadb-server
    一开始纳闷了,怎么错误,结果发现名字错了。

    • FrankGreg
      FrankGreg发布于: 

      感谢指出,已订正。

  2. Chauzeix
    Chauzeix发布于: 

    大师:遇到过这种情况吗,不知如何解决。抽空帮忙看下啊。

    安装后出现以下错误:

    Internal Server Error

    The server encountered an internal error and was unable to complete your request.
    Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
    More details can be found in the server log.

发表评论

电子邮件地址不会被公开。 必填项已用*标注