lamp环境下开发php,Linux下LAMP PHP开发环境搭建

本想轻松顺利的看到phpinfo显示在我的页面上,没想到安装环境时一路的error,不停的google折腾了半天终于看到了phpinfo。在此把遇到的问题总结一下,给大家提供一个参考。

我的OS是ubuntu 9.10,得益于apt-get强大的功能参考了一下这篇文章http://wiki.ubuntu.org.cn/index.php?title=Apache&variant=zh-cn#.E5.AE.89.E8.A3.85LAMP,轻松的完成了LAMP的搭建。

来手痒痒的不行,把环境全删了重新用源码包搭建了一遍。步骤如下:

(由于用非root账户登录,在需要root权限时用sudo执行)

一、build-essential的安装#bulid-essential是编译源码包(C/C++程序)所需的编译工具

#ubuntu 下默认没有安装,ubuntu下可以执行sudo apt-get install build-essential

安装包  build-essential_11.4.tar.gz#安装命令

tar-zxvf build-essential_11.4.tar.gz

cd  build-essential-11.4

./configure

make

sudo make install

make clean

二、MySql的安装

step.1

ncurses的安装#如果缺少ncurses包mysql编译会报No curses/termcap library found的错误

安装包  ncurses-5.6.tar.gz

tar-zxvf ncurses-5.6.tar.gz

cd  ncurses-5.6

./configure--prefix=/usr/local/ncurses--with-shared--without-debug--enable-widec

make

sudo make install

make clean

step.2

mysql的安装

安装包mysql-5.1.42.tar.gz

step.a#安装命令

tar-zxvfmysql-5.1.42.tar.gz

cdmysql-5.1.42

./configure--prefix=/usr/local/mysql--with-named-curses-libs=/usr/local/ncurses/lib/libncursesw.so.5.6--with-charset=gbk#--prefix=/usr/local/mysql    mysql的安装路径

#关于mysql配置文件路径的说明:mysql按照下列顺序搜索my.cnf

#/etc,mysql安装目录如 /usr/local/mysql/etc,安装目录下的data目录如 /usr/local/mysql/data,以最先找到的为准。/etc下my.cnf的配置是全局设置

#--with-named-curses-libs=/usr/local/ncurses/lib/libncursesw.so.5.6   ncurses库文件安装路径

#--localstatedir=/usr/local/mysql/var    数据库默认存放路径(可以设置其它路径如,/var/lib/mysql)

#--with-charset=gbk   设置数据库支持中文字符集

make

sudo make install

step.b#拷贝mysql配置文件到目标目录/usr/local/mysql/etc

#新建/usr/local/mysql/etc目录(该目录没有自动创建)

sudomkdir/usr/local/mysql/etc

sudo cp support-files/my-medium.cnf/usr/local/mysql/etc/my.cnf#删除安装产生的临时文件(一定要在拷贝完配置文件后在执行,不然my-medium.cnf会被删除)

make clean

step.c#添加一个名为mysql的linux系统群组(可以参考mysql手册2.8.1. 源码安装概述)

sudo groupaddmysql

#新建一个名为mysql的linux系统用户,并将其添加到mysql系统群组中

#如果Linux只启动命令行界面,可以用下面的操作添加需要的账户

#sudo useradd -M -s /bin/false -g mysql mysql

#-M 该选项不会建立用户目录

#-s 指定新建用户使用的shell,/bin/false表示该用户不能登录系统

#-g mysql 将用户mysql添加到组mysql中

#我现在用的时桌面系统,用如上命令添加账户。系统启动时在登录界面会显示mysql用户虽然它不登录

#改用下面命令,mysql账户就不会显示在登录界面了

sudo useradd-r-s/bin/false-gmysqlmysql

#-r 建立系统账户,不创建用户目录,用户分配的uid小于1000

step.d#创建mysql授权表

#如果用root运行命令,应当使用--user选项。选项的值应与你在stpe.czz中创建的登录账户相同。如果用该用户登录来运行命令,可以省略--user选项

sudo/usr/local/mysql/bin/mysql_install_db--user=mysql

step.e#进入mysql的安装目录(/usr/local/mysql)

cd/usr/local/mysql

#将文件的所有属性改为root用户

sudochown-R root.

#将数据目录的所有属性改为mysql用户(即在step.c中创建的用户)

sudochown-Rmysqlvar

#将组属性改为mysql组

sudochgrp-Rmysql.

step.f#启动mysql服务

sudo/usr/local/mysql/bin/mysqld_safe--user=mysql&

#登录数据库

/usr/local/mysql/bin/mysql-uroot

mysql安装完成了

三、Apache的安装#使用DSO动态编译,关于动态编译与静态编译的区别可以参考http://www.ha97.com/2612.html

安装包  httpd-2.2.14.tar.gz

tar-zvxf httpd-2.2.14.tar.gz

cd httpd-2.2.14

./configure--prefix=/usr/local/apache--enable-mods-shared=most--enable-so#--prefix=/usr/local/apache 将apache安装到/usr/local/apache路径

#--enable-mods-shared=most  将所有标准模块都动态编译为DSO模块

#--enable-so  apache核心装载DSO,但是不实际编译任何动态模块

make

make install

make clean#启动apache

sudo/usr/local/apache/bin/apachectl start#打开浏览器输入浏览器会看到It works!

apache安装完成了

四、PHP的安装

step.1

freetype的安装

安装包  freetype-2.3.11.tar.gz#安装命令

tar-zxvf freetype-2.3.11.tar.gz

cd freetype-2.3.11

./configure--prefix=/usr/local/freetype

make

sudo make install

make clean

step.2

zlib的安装

安装包 zlib-1.2.3.tar.gz#安装命令

tar-zxvf zlib-1.2.3.tar.gz

cd zlib-1.2.3

./configure

make

sudo make install

make clean#安装时更改过zlib的安装目录如/usr/local/zlib,改后libpng的安装也成功了,当是到安装gd库时一直失败,不得已又把zlib安装到默认路径,后边才顺利通过

step.3

libpng的安装

安装包  libpng-1.4.0.tar.gz#安装命令

tar-zxvf libpng-1.4.0.tar.gz

cd libpng-1.4.0

./configure--prefix=/usr/local/libpng

make

sudo make install

make clean#很多人这样操作 cp scripts/makefile.std makefile 代替了./configure (两者区别有待查证)

step.4

jpeg的安装

安装包  jpegsrc.v7.tar.gz#安装命令

tar-zxvf jpegsrc.v7.tar.gz

cd jpeg-7

./configure--prefix=/usr/local/jpeg7

make

sudo make install

make clean#很多人手动建立 jpeg的目录结构不知道是因为不同还是有其它原因(有待查证)

#以上包都是gd库所需要的组成库,下面安装gd库

step.5

gd库的安装

安装包 gd-2.0.35.tar.gz#安装命令

step.a

tar-zxvf gd-2.0.35.tar.gz

cd gd-2.0.35

./configure--prefix=/usr/local/gd2--with-freetype=/usr/local/freetype--with-png=/usr/local/libpng--with-jpeg=/usr/local/jpeg7

step.b#编辑 Makefile 文件, 找到 232 行左右

#看到类似内容 CPPFLAGS = -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/jpeg7/include

#修改为 CPPFLAGS = -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/libpng/include -I/usr/local/jpeg7/include

step.c#编辑 gd_png.c 文件 找到 if (!png_check_sig (sig, 8)) { /* bad signature */

#修改为  if (png_sig_cmp (sig, 0, 8)) {

step.d#执行命令

make

sudo make install

make clean#gd库安装完成

step.6

libxml2的安装#libxml2用来解析xml

#安装命令

tar-zxvf libxml2-2.6.26.tar.gz

cd libxml2-2.6.26

./configure--prefix=/usr/local/libxml

make

make install

make clean

step.7

php的安装

安装包  php-5.3.1.tar.gz#安装命令

step.a

tar-zxvf php-5.3.1.tar.gz

cd php-5.3.1.tar./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache/bin/apxs--with-mysql=/usr/local/mysql--with-libxml-dir=/usr/local/libxml2--with-zlib--with-png-dir=/usr/local/libpng--with-jpeg-dir=/usr/local/jpeg7--with-freetype-dir=/usr/local/freetype--with-gd=/usr/local/gd2

make

sudo make install

make clean

step.b

拷贝PHP配置文件

sudo cp php.ini-development/usr/local/php/lib/php.ini#php配置文件名称不同本版名称会有差异,当前版本中有两个文件 php.ini-development(开发环境中用的)  php.ini-production(生产环境中用的)

step.d

修改apache配置文件/usr/local/apache/conf/httpd.conf#添加对php的支持

LoadModule php5_module modules/libphp5.so

AddType application/x-httpd-php.php

step.e#如果用root账户登录跳过这一步

#更目录web目录权限

sudochown-R 登录用户:登录用户/usr/local/apache/htdocs

step.f#重启apache

sudo/usr/local/apache/bin/apachectl  restart

好了到此linux配置环境配置完了,由于各种问题这篇文章拖了好几天才写完。这中间还发生了未保存而丢失文档的杯俱泪奔啊!其中各个包的安装./configure涉及到的参数只是一些基本的参数,LAMP之旅刚刚开始。走过了会发现没有想象的那么困难了,好了。GOOD LUCK!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值