• 树莓派变成一个Web服务器: nginx + php + sqlite


    将树莓派变成一个Web服务器,通过访问网页,就可以控制树莓派,比如:查看摄像头\开灯等等.

    一想到Linux Web服务器,我们首先想到的是,Apache + MySql + Php.

    树莓派可以安装这个LAMP系列,但Apache 和 MySql对于树莓派这个小小的机器,太重了,主要是消耗内存多\速度慢\占用磁盘大(约200M吧)

    所以要安装一个轻量级的Web服务器.

    经试用,推荐组合为:  nginx + php + sqlite

        nginx 是个轻量级的Web服务器,比Apache不差

        sqlite 是个最轻量级的数据库

        php  大家都很熟悉了,Web脚本语言

    1,安装nginx  web服务器 (约6MB)
    sudo apt-get install nginx

    2,启动nginx
    sudo /etc/init.d/nginx start

    nginx的www根目录默认在 /usr/share/nginx/www中

    3,安装php和sqlite(约3MB)
    sudo apt-get install php5-fpm php5-sqlite

    4,修改nginx的配置文件
    sudo nano /etc/nginx/sites-available/default

    4.1 找到listen行,将其前面的#号注释去掉,修改后内容如下
    listen 80; ## listen for ipv4.

    4.2 找到index行,加入index.php,修改后内容如下
    index index.php index.html index.htm

    4.3 找到php的定义段,将这些行的注释去掉 ,修改后内容如下
    location ~ .php$ {
     fastcgi_pass unix:/var/run/php5-fpm.sock;
     fastcgi_index index.php;
     include fastcgi_params;
    }

    php段中有一些其它定义,不要去动它,比如:

    #      fastcgi_split_path_info ...
    #      fastcgi_pass 127.0.0.1:9000

    5.重新加载nginx的配置
    sudo /etc/init.d/nginx reload

    6, 测试一下,通过主机的IE访问树莓派,可以看到主页(表示Web服务器已正常启动)

    7. 在树莓派中生成一php文件,测试一下php

    sudo nano /usr/share/nginx/www/test.php

    在文件中输入以下内容

    <?  phpinfo(); ?>

    存盘退出

    IE访问一下这一页,说明php也是OK的

    8, 我们还需要安装一个ftp服务器,用于对web上下载文件

    安装vsftpd,用于web内容的ftpd上传,安装方法见我的上一篇博文:树莓派(raspberry pi)学习10: 安装ftp服务器(http://blog.csdn.net/c80486/article/details/8460854)

    9,生成一个网站管理员用户,用于ftp上下载网站文件,如下

    增加一个用户,用户名为webadmin

        sudo useradd webadmin

    修改用户webadmin的密码
        sudo passwd webadmin

    按系统提示,输入密码,例如:123456

    让用户webadmin拥有www根目录的所有权
    sudo chown -R webadmin /usr/share/nginx/www 

    将用户webadmin的登录目录更改为www根目录

    sudo usermod -d /usr/share/nginx/www webadmin

    重启vsftpd

    sudo service vsftpd restart

    OK,配置完成,用户webadmin登录ftp后,将直接进入www根目录,并可上下载文件\创建目录\删除文件等等.

    网文参考:http://kmil.us/blog/2012/08/12/raspberry-pi-as-a-web-server/

  • 相关阅读:
    把一元可以分解成几个1毛,2毛,5毛?
    记录集导出到Excel方法
    MySQL数据库加密与解密:
    运行时错误'430': 类不支持自动化或不支持期望的接口。New ADODB.Connection问题
    instrrev 和instr 区别vb
    解决用 VB 中用 ADO 访问 数据库时 SQL 查询处理 Null 值的问题( 使用 iff(isNull(字段), 为空时的值,不为空时的值) 来处理)
    Mysql SQL CAST()函数
    MySQL CAST与CONVERT 函数的用法
    一些网页链接
    git上传时出现ERROR: Repository not found.的解决办法
  • 原文地址:https://www.cnblogs.com/jsben/p/4763143.html
Copyright © 2020-2023  润新知