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

时间:2021-08-30 01:56:51

将树莓派变成一个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服务器已正常启动)

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

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

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

在文件中输入以下内容

<?  phpinfo(); ?>

存盘退出

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

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

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/