fedora linux平台下搭建lighttpd+php+sqlite
(一)lighttpd
1. 安装
yum install lighttpd
安装完毕后,系统中应该多了一个用户lighttpd和组lighttpd。这个用户,默认是不同意登陆的。
我们改动/etc/passwd,将lighttpd改动为例如以下形式。
lighttpd:x:489:470:lighttpd web server:/home/lighttpd/:/bin/bash
注意,你所示数字可能不是489,470,这个没关系,也不用改,保持原来的值就可以。
2. 为lighttpd用户创建一个文件夹,将站点的内容放进去
mkdir /home/lighttpd
chown lighttpd:lighttpd /home/lighttpd
创建相关子文件夹,并放入站点的内容。
注意,/home/lighttpd以lighttpd文件夹中的各种操作,都以lighttpd用户的身份来完毕。否则,lighttpd执行时可能会出现权限问题。
su lighttpd
cd /home/lighttpd
mkdir www
mkdir www/cgi-bin
mkdir www/databases
mkdir www/images
mkdir www/log
好了,如今能够往各个文件夹里放内容了,网页,图片,php脚本,sqlite数据库文件等。
index.html就放到www文件夹下。
3. 配置
改动lighttpd的配置文件 /etc/lighttpd/lighttpd.conf
a)打开cgi功能
当然,你也能够依据须要,打开其它的功能。我改动后的server.modules例如以下。
server.modules = (
"mod_rewrite",
"mod_redirect",
# "mod_alias",
"mod_access",
# "mod_trigger_b4_dl",
# "mod_auth",
# "mod_status",
# "mod_setenv",
# "mod_fastcgi",
# "mod_proxy",
# "mod_simple_vhost",
# "mod_evhost",
# "mod_userdir",
"mod_cgi",
"mod_compress",
# "mod_ssi",
"mod_usertrack",
# "mod_expire",
# "mod_secdownload",
# "mod_rrdtool",
"mod_accesslog" )
b) 默认的文件名称
这里把default.xxx也给加上。
index-file.names = ( "index.php", "index.html",
"index.htm", "default.htm", "default.php" )
c) 设置一些路径
server.document-root = "/home/lighttpd/www/"
## where to send error-messages to
server.errorlog = "/home/lighttpd/www/log/error.log"
accesslog.filename = "/home/lighttpd/www/log/access.log"
#### php解析器的路径加上
cgi.assign = ( ".pl" => "/usr/bin/perl",
".php" => "/usr/bin/php-cgi" )
4. 启动lighttpd
service lighttpd start
5. 设置lighttpd开机自己主动启动
chkconfig --add lighttpd
(二)sqlite
这个简单,直接安装一下即可了。
yum install sqlite
(三)php
1. 编译及安装
下载php源代码包
http://ar2.php.net/distributions/php-5.6.3.tar.bz2
将源代码包复制到 /root文件夹下
然后进入/root文件夹,运行例如以下命令序列
tar -xjf php-5.6.3.tar.bz2
cd php-5.6.3
./configure --prefix=/usr --with-config-file-path=/etc --enable-libxml --with-libxml-dir=/usr/lib --with-sqlite3 --enable-pdo --with-pdo-sqlite CLAGS=-O2
make; make install
须要注意的是,这样的编译方式,支持訪问sqlite3的方式为pdo方式。这样的方式,不须要依赖不论什么extension
(四)測试
a)
用lighttpd用户,进入/home/lighttpd/www/databases文件夹,创建一个数据库
[lighttpd@localhost databases]$ sqlite3 test.db
SQLite version 3.6.22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table my_friends(name varchar(10), age smallint);
sqlite> insert into my_friends values('tom',22);
sqlite> insert into my_friends values('liyan',21);
输入ctrl+d退出sqlite shell
b) 用lighttpd用户,进入cig-bin文件夹,创建一个php脚本haha.php,内容例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
//phpinfo();
echo "hello 我的第一个php脚本<br>";
echo getcwd();
$file_db = new PDO('sqlite:../databases/test.db');
$result = $file_db->query('SELECT * FROM my_friends');
foreach($result as $row)
{
echo " name: ".$row['name']."<br>";
}
?>
</body>
</html>
c) 用浏览器訪问haha.php看看效果吧 :)
http://ip_of_lighttpd/cgi-bin/haha.php
假设在调试php程序时,遇到问题,能够打开/etc/php.ini,设置例如以下内容,以打开php的报错功能:
error_reporting = E_ALL & ~E_NOTICE
display_errors = On
fedora linux平台下搭建lighttpd+php+sqlite的更多相关文章
- Perl Tk在IC设计中的应用、Windows、Linux平台下的安装-各种错误的摸索解决
本文转自:自己的微信公众号<集成电路设计及EDA教程> <Perl Tk在IC设计中的应用.Windows.Linux平台下的安装-各种错误的摸索解决> Perl在IC设计中有 ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
- linux平台下防火墙iptables原理(转)
原文地址:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646466.html iptables简介 netfilter/iptables( ...
- Windows及Linux平台下的计时函数总结
本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒.毫秒.微秒三种精度的各种函数.比如Window平台下特有的Windows API函数GetTickCount().timeG ...
- Thrift在Windows及Linux平台下的安装和使用示例
本文章也同时发表在个人博客Thrift在Windows及Linux平台下的安装和使用示例上. thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的R ...
- Linux平台下裸设备的绑定:
Linux平台下裸设备的绑定: 运用RAW绑定 方法一 raw的配置(1) [root@qs-dmm-rh2 mapper]# cat /etc/rc.local #!/bin/sh # # This ...
- 在Linux 环境下搭建 JDK 和 Tomcat
在Linux 环境下搭建 JDK 和 Tomcat 参考地址:http://www.cnblogs.com/liulinghua90/p/4661424.html [JDK安装] 1.首先下载 ...
- Linux平台下源码安装mysql多实例数据库
Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...
- Windows 和 Linux 平台下的端口转发工具
原文地址: http://unmi.cc/windows-linux-port-forwarding/ 这里记录一下我曾经使用过的几个端口转发工具,即端口映射.端口重定向,和 NAT 也是差不多的概念 ...
随机推荐
- TWinControl的消息覆盖函数大全(41个WM_函数和31个CM_函数,它的WndProc就处理鼠标(转发)、键盘(取消拖动)、焦点、和WM_NCHITTEST一共4类消息)
注意,这些函数只有Private一种形式(也就是不允许覆盖,但仍在动态表格中): 其中TWinControl对TControl有10个消息进行了覆盖(红色标记),其中有2个是WM_消息,8个是CM_消 ...
- oracle存储过程、声明变量、for循环(转)
oracle存储过程.声明变量.for循环 1.创建存储过程 create or replace procedure test(var_name_1 in type,var_name_2 out ty ...
- Windows8和MacOS10.9双系统安装及Mac经常使用软件安装--联想E49A
前提 本篇内容所描写叙述的内容仅仅适合联想E49A笔记本,经过本篇的内容之后,对于Mac OS 10.9的使用达到正常工作使用的标准,完美度已经比較好了. 结果例如以下:显卡.网卡(RTL8168). ...
- Redis最有用的中文资源,你值得拥有
只是为了记录资源地址,最好直接访问doc.redisfans.com更美观 Redis 命令参考 本文档是 Redis Command Reference 和 Redis Documentation ...
- php 双向队列类
(deque,全名double-ended queue)是一种具有队列和栈的性质的数据结构.双向队列中的元素能够从两端弹出,其限定插入和删除操作在表的两端进行. 在实际使用中,还能够有输出受限的双向队 ...
- C#获取Excel中所有的Sheet名称
原文地址:http://blog.csdn.net/qq1010726055/article/details/6858849 Excel.Application myExcel = new Excel ...
- poj3295 Tautology , 计算表达式的值
给你一个表达式,其包括一些0,1变量和一些逻辑运算法,让你推断其是否为永真式. 计算表达式的经常使用两种方法:1.递归: 2.利用栈. code(递归实现) #include <cstdio&g ...
- UVa 1292 - Strategic game (树形dp)
本文出自 http://blog.csdn.net/shuangde800 题目链接: 点击打开链接 题目大意 给定一棵树,选择尽量少的节点,使得每个没有选中的结点至少和一个已选结点相邻. 思路 ...
- LDA主题模型学习笔记3.5:变分參数推导
如今来推导一下得到变分參数更新式的过程.这一部分是在论文的附录中,为避免陷入过多细节而影响总体理解.能够在刚開始学习LDA的时候先不关注求解细节.首先要把L写成关于γ,ϕ\gamma,\phi函数.依 ...
- 浅析ArrayList,LinkedList的执行效率
以前见过很多文章说这两个东西,感觉自己还是没有深入理解,今天看了书明白一些,在此提出来和大家共同探讨: 面试的时候(基础)一般会问你使用过LinkedList或者ArrayList没有,简单的回答有或 ...