安装配置Linux+lighttpd+mysql+PHP(FastCGI) .

分类: Linux-web服务器搭建 2009-08-28 17:38 3758人阅读 评论(0) 收藏 举报

安装配置Linux+lighttpd+mysql+PHP(FastCGI)

作者:zccst

Linux系统:CentOS 5.3

前面的话

本文详细介绍了Linux+lighttpd+mysql+PHP(FastCGI)方式的安装配置过程。全文按三大块内容详细阐述,分别是1,lighttpd,mysql,PHP安装过程。2,三者之间的关联配置。3,简单测试。以下是详细内容。

注1:由于技术日新月异,不同软件间难免会出现异步,即便同步,不同时期发行的版本之间也会存在不兼容。比如,PHP从5.3.0开始,支持fastcgi的方式,已经发生改变。对于lighttpd,从1.4.23开始,也调整了布局,根本没有/bin目录,更谈不上/bin/spawn-cgi。如果你使用最新版本软件,却按照以前的方法进行安装配置,肯定会出错。

本文使用版本:

lighttpd  1.4.18

mysql    5.1.30

php       5.2.10

注2:所有用到源码安装的软件,都没有给出下载过程,而是直接使用。原因自明。

Lighttpd,mysql,PHP安装过程

安装lighttpd-1.4.18

一、安装

1, Pcre

(1) 下载。

(2) 安装。rpm -ivh pcre-devel-4.5-3.2.SEL4.i386.rpm --nodeps(强制安装)

(3) 输入rpm -qa |grep pcre

返回结果:pcre-4.5-3 或 pcre-devel-4.5-3.2.SEL4 表示已经成功安装

2, lighttpd

tar

cd

./configure --prefix=/opt/lighttpd

make

make install

二、配置

mkdir /etc/lighttpd/         #用来存放主配置文件

mkdir -p /var/www/htdocs  #用来存放网站

mkdir /opt/lighttpd/log      #用来存放日志

cp doc/sysconfig.lighttpd /etc/sysconfig/lighttpd

vi lihttpd  修改所在路径为 lighttpd="/opt/lighttpd/sbin/lighttpd"

cp doc/lighttpd.conf /etc/lighttpd/lighttpd.conf

vi  lighttpd.conf(修改主配置文件)

(1)修改默认目录路径

设置错误日志文件路径

server.errorlog = "/opt/lighttpd/logs/lighttpd.error.log" (43行)

设置访问日志文件路径

accesslog.filename = "/opt/lighttpd/logs/access.log" (116行)

(2)把#server.port                = 81 前的#去掉

(3)用什么权限来运行lighttpd

server.username = "lighttpd"

server.groupname = "lighttpd"

从安全角度来说,不建议用root权限运行web server,可以指定普通用户权限。

(4)#$HTTP["url"] =~ "/.pdf$" {

# server.range-requests = "disable"

#}

创建lighttpd用户

useradd lighttpd

chown –R lighttpd:lighttpd /opt/lighttpd/

chown –R lighttpd:lighttpd /var/www/htdocs/

三、启动并测试。由于下面还要安装其它软件,可暂不测试。

启动命令:

/opt/lighttpd/sbin/lighttpd –f /etc/lighttpd/lighttpd.conf

查看端口(81)

netstat –ln|more

安装mysql-5.1.30

一、安装

tar

cd

./configure –prefix=/opt/mysql

make

make install

二、配置

1, 修改主配置文件

cp support-files/my-medium.cnf /etc/my.cnf

将/etc/my.cnf文件中的skip-federated注释掉

2,添加mysql用户

useradd mysql

chown –R mysql:mysql /opt/mysql          (主文件夹)

chown –R mysql:mysql /etc/my.cnf          (主配置文件)

注:权限问题非常重要,稍不注意就会出错。

三、启动

1, 生成mysql用户数据库和表文件

./mysql_install_db --user=mysql

运行之后在/opt/mysql/下会生成var/文件夹,现更改其属主。

chown –R mysql:mysql /opt/mysql/var

2, 启动服务器端。

./mysqld_safe --defaults-file=/etc/my.cnf &

3, 用客户端登录访问数据库

./mysql –u root –p

四、使用

第一次登陆密码为空,直接按回车就可以使用数据库了。

安装php-5.2.10

一、安装

1,GD库(共6 + 1 = 7个),为了减少篇幅,具体执行略去,需要注意的地方已标出。

(1)zlib

(2)jpeg6      mkdir /opt/jpeg6/

mkdir /opt/jpeg6/bin/

mkdir /opt/jpeg6/lib/

mkdir /opt/jpeg6/include/

mkdir /opt/jpeg6/man/

mkdir /opt/jpeg6/man1/

mkdir /opt/jpeg6/man/man1/

--prefix=/opt/jpeg6/ --enable-shared --enable-static(注:添加参数)

make install-lib

(3)libpng

(4)freetype   --prefix=/opt/freetype/

(5)libxml2   cp xml2-config /usr/bin

(6)fontconfig  --prefix=/opt/fontconfig  --with-freetype-config=/opt/freetype/bin/freetype-config

注:如果在安装fontconfig时, ./configure  出现以下错误

checking for LIBXML2... configure: error: Package requirements (libxml-2.0 >= 2.6) were not met:

No package 'libxml-2.0' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you

installed software in a non-standard prefix.

Alternatively, you may set the environment variables LIBXML2_CFLAGS

and LIBXML2_LIBS to avoid the need to call pkg-config.

See the pkg-config man page for more details.

解决办法:

yum install libxml2-devel

最后按照GD,把上面6个关联起来,顺序与上面对应:

(7)gd         --prefix=/opt/gd --with-zlib-dir --with-jpeg=/opt/jpeg6/ --with-png-dir --with-freetype=/opt/freetype/ --with-libxml2-dir --with-fontconfig=/opt/fontconfig/

可选安装:curl  libxslt

2,php

tar

cd

./configure  --prefix=/opt/php    --enable-fastcgi  --enable-force-cgi-redirect  --with-mysql=/opt/mysql/  --with-gd=/opt/gd/    --with-libxml-dir

make

make test

注:如果在make test时出现以下错误

cannot restore segment prot after reloc permission denied

问题原因:权限问题。

解决办法:

1,编辑/etc/sysconfig/selinux,找到:

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=enforcing

如果SELINUX已经是 SELINUX=disabled,那么就不用改了,否则就把SELINUX=enforcing 注释掉,新加一行:

SELINUX=disabled

保存,退出。

2,在你保证SElinux 被disabled后.还执行下chcon -t texrel_shlib_t

如: chcon -t texrel_shlib_t /路径/路径/名字.so   (这个文件视具体执行文件.)

两步后,应该就ok了。

再次make test ,顺利完成!~~~

make  install

二、配置

cp php.ini-dist /opt/php/lib/php.ini

三者之间的关联配置

一、在php的主配置文件里,修改与lighttpd相关联的内容

cgi.fix_pathinfo=1 ,把前面的注释 ; 去掉,再把后面的值改为1。保存退出。

二、在lighttpd的主配置文件里,修改与php相关联的内容

1,server.modules(在24行)

取消需要用到模块的注释,mod_rewrite,mod_access,mod_fastcgi,

mod_simple_vhost,mod_cgi,mod_compress,mod_accesslog是一般需要用到的。

2, 设置网站根目录路径

server.document-root    = "/var/www/htdocs/"

3,找到fastcgi的定义

#### fastcgi module

## read fastcgi.txt for more info

## for PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini

fastcgi.server = ( ".php" =>

( "localhost" =>

(

"socket" => "/var/run/lighttpd/php-fastcgi.socket",

"bin-path" => "/opt/php/bin/php-cgi"

)

)

)

三、       mysql与lighttpd、php相关联.(此处不需任何修改)

仅仅在安装php时 ./configure 加上 --with-mysql=/opt/mysql/ 就可以了。

vi /opt/lib/php.ini

查找register_globals = Off,把off改成On

再查找short_open_tag = Off,把off改成On

在查找extension=php_mbstring.dll把前面"#"号都去了,这样才能启动这条参数的功能。

比如要使PHP支持mysql,那么就要吧extension=php_mysql.dll前面的"#"去掉。

简单测试

首先关闭安装lighttpd时,启动的进程,然后重新启动lighttpd

/opt/lighttpd/sbin/lighttpd –f /etc/lighttpd/lighttpd.conf

注:如果重启出现以下错误

2009-08-28 16:59:07: (mod_fastcgi.c.900) bind failed for: unix:/var/run/lighttpd/php-fastcgi.socket-0 No such file or directory

2009-08-28 16:59:07: (mod_fastcgi.c.1336) [ERROR]: spawning fcgi failed.

2009-08-28 16:59:07: (server.c.895) Configuration of plugins failed. Going down.

问题原因:版本不兼容问题。

解决办法:

cd /var/run

mkdir lighttpd

重启lighttpd,成功启动!~~~

cd  /var/www/htdocs

vi  test.php

phpinfo();

?>

保存退出后。

在浏览器里输入:http://本机ip/test.php

如果显示PHP页面表示已经安装成功!~~~

linux lighttpd php,安装配置Linux+lighttpd+mysql+PHP(FastCGI)相关推荐

  1. linux redis数据库安装配置,Linux系统中redis的安装配置步骤

    Linux系统中redis的安装配置步骤 发布时间:2020-06-23 10:13:36 来源:亿速云 阅读:87 作者:Leah 这篇文章将为大家详细讲解有关Linux系统中redis的安装配置步 ...

  2. linux服务器配置php mysql,Linux系统如何安装配置Apache+PHP+MySQL服务器环境

    到www.mysql.com , www.apache.org , www.php.net下载mysql,apache,php的最新源码包 mysql-standard-5.0.1-alpha-sna ...

  3. linux php ldap 安装配置,linux下 ldap安装及使用

    安装ldap: yum install -y openldap openldap-servers openldap-clients openldap-devel 配置ldap: cd /etc/ope ...

  4. Linux下cronolog安装配置

    Linux下cronolog安装配置 Linux下cronolog安装配置 Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计.安装crono ...

  5. linux nginx编译安装mysql_Centos7下编译安装配置Nginx+PHP+MySql环境

    序言 这次玩次狠得.除了编译器使用yum安装,其他全部手动编译.哼~ 看似就Nginx.PHP.MySql三个东东,但是它们太尼玛依赖别人了. 没办法,想用它们就得老老实实给它们提供想要的东西. 首先 ...

  6. Lighttpd 的安装配置(web服务器软件)

    Lighttpd 的安装配置 2006-07-16 01:06 lighttpd(http://lighttpd.net/)和apache一样是开源的,与apache相比,虽然功能不及apache完善 ...

  7. linux apf防火墙安装配置

    linux apf防火墙安装配置 APF(Advanced Policy Firewall)是 Rf-x Networks 出品的Linux环境下的软件防火墙,被大部分Linux服务器管理员所采用,使 ...

  8. Linux下ejabberd安装配置

    为什么80%的码农都做不了架构师?>>>    Linux下ejabberd安装配置 1.下载Ejabberd安装包 wget http://www.process-one.net/ ...

  9. linux如何安装php,Linux下如何安装配置PHP

    1)本文主要和大家分享Linux下如何安装配置PHP,下载PHP安装包,这里选用PHP 5.6版本,希望能帮助到大家. 并解压PHP安装包wget cn2.php.net/get/php-5.6.31 ...

最新文章

  1. ActionScript 3操作XML 详解
  2. 在对linux系统分区进行格式化时需要对磁盘簇(或i节点密度)的大小进行选择,请说明选择的原则。
  3. 初等数学O 集合论基础 第一节 集合及其基本运算、de Moivre公式
  4. 112. 雷达设备【贪心】
  5. 人工智能改变生活的 10 种方式
  6. 1035 插入与归并 (25 分)(c++)
  7. mysql 记录所有操作_mysql 的一些记录的操作
  8. C#LeetCode刷题之#28-实现strStr()(Implement strStr())
  9. Prometheus+Grafana PG监控部署以及自定义监控指标
  10. React:开发者友好性和易用性
  11. 兼职做了DB设计和维护的体会(存储过程,视图,函数,范式)
  12. (转)linux sort 命令详解
  13. linux连接库参数-l,gcc编译时,什么时候需要用-l参数指明连接库?
  14. 无法连接outlook邮箱服务器,OUTlOOK最近登不上
  15. 一次LoadLibrary调用失败的调试经历
  16. 微信小程序地图图标controltap
  17. Word文档段落的前后间距单位磅改为行,行改为磅方法演示
  18. 怎么看计算机端口号,Win7怎么查看端口号?
  19. 高中关于人工智能方面的课题_《人工智能的发展与应用》课题开题报告
  20. RAD Studio 10.4 for delphi XE Assigned和Nil的联系与区别

热门文章

  1. AD7689中文学习笔记
  2. 为什么我们很少看见日本产的智能手机?
  3. 【学习笔记】财务分析的五个步骤
  4. videoview 有声音没画面的可能原因
  5. 注意,HR挖的这道坑,千万不能跳
  6. from gensim.models import Word2Vec
  7. 物联网网关常见问题解答(一)
  8. 计算机伺服系统的作用是,《伺服系统》课程教学大纲.doc
  9. 计算机专业大专毕业后可以考研,【专科生怎么考研】专科生考研计算机常见问题答疑...
  10. 原生Javascript实现五子棋