linux 安装配置lamp v2

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。http://blog.csdn.net/mayongzhan - 马永占,myz,mayongzhan

最终安装的只有mysql+apache+php

系统里自带了zlib libxml2 libxslt libcurl openssl

经修改过后的linux安装配置lamp v2如下:

痛苦了N天啊.这东西真的很变态.N多个软件需要make

想到这里突然开始喜欢xmapp了

希望广大PHPER有时间了再研究这个太费时间...如果你是职业的linux管理员...那可要努力了.!

装了第一次卡到zlib上....最后的结果就是删掉已经快被装烂了的centos...

痛苦的过程如下

mysql + apache + openssl + PHP + gd + libpng + libjpeg + freetype2 + zlib(这个很重要很多都要用.) +libxml2

mysql

这是第一道坎

先是make出错...经过分析才知道是gcc没有装.晕掉. 装centos时没有注意要选有个开发工具的东西...make可以用了之后...发现还是make不了,经过分析....知道我下的是glibcc,是编译完了的...倒~~~~

直接复制过去...

apache这个东西先是没装.先要装其他的一些小东西.然而就是这些小东西.导致整个过程的终止

zlib

这个是第一个装的.没什么说的,./configure --prefix=/usr/myz/libs/zlib

顺利装上

freetype2

也顺利装上

然后是libpng

这里卡死了...

提示找不到zlib

我试了改makefile....结果没用...

然后又重新装了下zlib...然后装libpng...结果没有装到指定地点...疯掉.

之后删除

痛苦...如果上天再给我一次机会...我愿意直接装xmapp...如果需要装一台web服务器的话.我选择.rpm...如果是ubuntu的话我选择apt-get...

努力的重新安装一遍.如下:

MySQL+Apache+PHP+gd + libpng + libjpeg + freetype2 + zlib+libxml

MySQL

tar -zxvf mysql.tar.gz

groupadd mysql

useradd -g mysql mysql

到解压好的那个目录下

初始化数据库: ./scripts/mysql_install_db --user=mysql

chown -R root .
chown -R mysql data
chgrp -R mysql .

加入到系统启动组(red hat): cp ./support-files/mysql.server /etc/init.d/mysqld

chkconfig mysqld reset
加配置cp ./support-files/my-medium.cnf /etc/my.cnf
bin/mysqld_safe --user=mysql &

这里又出了点小问题,系统启动出现错误.因为找不到mysql,当然要修改/etc.init.d/mysqld这个文件,把里面的/usr/local/mysql改成我的目录,OK

还有一点要到/usr/local/bin下面去ln -fs /usr/myz/mysql/bin/mysql mysql

当然还有mysqladmin mysqldump

这样还不能远程连接...晕....

grant all on *.* to root@"202.11.10.253" Identified by "dbpassword"

OK...MySQL是安装完了...

MySQL配置

设置其实刚才就做了一些

mysqladmin -u root password XXX

现在应该只剩下设置字符集了

找到客户端配置[client] 在下面添加

default-character-set=utf8 默认字符集为utf8

在找到[mysqld] 添加

default-character-set=utf8 默认字符集为utf8

init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)

修改好后,重新启动mysql(/etc/init.d/mysql restart) 即可,查询一下show variables like 'character%';

Zlib

这个很重要....吸取以前的教训.直接默认安装

# tar -zxvf zlib-1.2.2.tar.gz
# cd zlib-1.2.2
# ./configure
# make
# make install

libjpeg

这个很傻帽.不能自己创建文件夹.试了就知道,在make install那步当中

# ./configure --prefix=/usr/local/jpeg --enable-shared --enable-static

# make
# make install

出现问题的文件夹就自己创建一下.OK

libpng

# cp scripts/makefile.linux makefile
# make (若是提示找不到zlib库文件或者头文件,多半是makefile文件里zlib的默认路径有误。可编辑makefile文件,找到zlib项并重新指定路径到zlib路径,建议还是默认安装)。
# make install

freetype

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

make

make install

libxml2
./configure --prefix=/usr/local/libxml2
make
make install

cp xml2-config /usr/bin 这个在php编译的时候会用到

gd

注意:png和zlib都是默认安装

# ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg --with-png=/usr/local/lib --with-zlib=/usr/local/lib --with-freetype=/usr/local/freetype
# make
# make install

如果不出现以上那几个的东西的 no的话就是安装成功了.终于.....接下来该apache了

apache

# ./configure --prefix=/usr/myz/apache --sysconfdir=/etc --enable-so --enable-track-vars --enable-rewrite --with-z=/usr/local/lib
# make
# make install

sysconfdir是配置文件目录

so是允许so

track-vars为启动cookie的get/post等追踪功能

rewrite重写

z zlib压缩

apache配置

vi /etc/httpd.conf
要改的有如下几处:
找到LoadModule php5_module modules/libphp5.so
让php5以动态模块方式(DSO)加载在apache上。apache在启动后去加载php。
前面的#号去掉(默认已去掉注释)( LoadModule xxx.so在php装完了自动会出来)
#AddType application/x-gzip .gz .tgz
下面加二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
第一句是让apache在遇到.php文件后缀的时候,调用php模块解释php里面的代码。第二句是在遇到.phps文件后缀的时候以语法高亮方式显示php源代码。这里可以做很多文章,比如AddType application/x-httpd-php .html,这样apache会把.html文件也通过php去解释,很多网站的"伪静态"就是这里做的手脚。
找到DirectoryIndex index.html
改为 DirectoryIndex index.html index.htm index.php,这是在给apache设置默认首页。并且是有先后顺序的。

修改www的目录

先mkdir /var/www

然后修改httpd.conf里

DocumentRoot "/var/www"

<Directory "/var/www">
# cp /usr/lamp/apache2/bin/apachectl /etc/init.d/httpd
设置开机自启动
# chkconfig --add httpd

这里会出现错误.在httpd里的第一行下面加上:

# myz

# chkconfig: 2345 60 40

# description: MyZ Server
将apache添加为系统服务
# service httpd start

这里先等一等,因为libphp5.so要装完php才会有。

关于Permission denied的错误

处理如下:

1. vi /etc/sysconfig/selinux

更改SELINUX=disabled

2.chcon -t texrel_shlib_t /usr/apache/modules/libphp5.so

或者简单的方法去关掉selinux,#setup在里面找selinux相关的disabled掉。
然后start就会开启服务了,同理service httpd stop就是停止服务。还可以service httpd restart。不过这个没有什么提示信息,你可以自己编写个shell脚本,加入一些提示信息就显得好看多了。

这里启动会出现一点错误:

httpd could not reliably determine

需要在httpd.conf 中的ServerName:www.example.com:80下面加上

www.yourdomain.com:80

对了如果ping不通80端口试试关掉linux的防火墙试试,#setup里面有。

php

# ./configure --prefix=/usr/myz/php \

--with-apxs2=/usr/myz/apache/bin/apxs \

--with-config-file-path=/etc \

--enable-safe-mode \

--with-zlib= \

--with-zlib-dir=/usr/local/lib \

--with-libxml-dir=/usr/local/lib \

--enable-mbstring \

--with-mysql=/usr/myz/mysql \

--with-mysql-sock=/tmp \

--with-pdo-mysql=/usr/myz/mysql \

--enable-soap \

--with-xmlrpc \

--enable-sockets \

--with-curl=/usr/local/lib \

--with-xsl=/usr/local/lib \

--with-openssl=/usr \

--with-gd=/usr/local/lib \

--with-jpeg-dir=/usr/local/lib \

--with-png-dir=/usr/local/lib \

--with-freetype-dir=/usr/loca/lib \

蓝字的是我觉得必须的.

有的是需要装的.比如apache,zlib,libxml2,libcurl,libxslt

我用的是5.2.5有的东西是默认的enable 比如cli

这个不全...但是够用...但是不好...但是也太多了

我编了N遍!!!!

美中不足.没有装上libcURL还有xslt

make

最可怕的是在make test时不断循环...最后退不出去.只能reset电脑...

make install

又出现错误,说找不到libphp5.so,搜了半天,最后把所有的删掉重来一次.OK

复制php.ini-recommended为php.ini,并存放到/etc/目录下.

php配置

这个...随意吧...因为是实验所以什么也没改...只看了下phpinfo()

结束...

(0)

相关推荐

  • Ubuntu VPS 简易安装LAMP教程

    首先应该正确设置主机名和IP,能正常连通外网. 1.输入以下命令获取root权限: sudo su 2.安装MySQL 5,输入以下命令: aptitude install mysql-server mysql-client 安装期间会要求设置MySQL数据库管理员密码,连续输入两次新密码. 3.安装Apache 2 aptitude install apache2 安装完成后,在浏览器输入VPS的IP地址,如果安装成功,显示It works! Apache的默认www目录在/var/www,主

  • Linux操作系统安装LAMP环境

    Step1. 安装 Apache 在terminal中输入命令 复制代码 代码如下: sudo apt-get install apache2 打开浏览器,在地址栏输入:127.0.0.1,如果出现了 "It works!",表明安装成功 Step2. 安装 php5 在 terminal 中输入: 复制代码 代码如下: sudo apt-get install php5 libapache2-mod-php5 php5-mysql 重启 apache2 : 复制代码 代码如下: su

  • linux 下配置LAMP环境

    1.准备 根据系统的不同,可能准备的文件也不同,我用的是Ubuntu Linux ,我已将以下五个文件打包,点击下方链接下载吧 httpd-2.2.9.tar.gz mysql-5.1.52.tar.gz php-5.3.5.tar.gz libxml2-2.7.7.tar.gz ncurses-5.6.tar.gz 百度网盘下载:Linux lamp环境安装包 2.安装mysql 复制代码 代码如下: 在安装之前需要添加mysql组和用户 //添加用户组用户,先取得root权限 trigkit

  • ubuntu lamp(apache+mysql+php) 环境搭建及相关扩展更新

    一.环境安装 1.安装apache2 sudo apt-get install apache2 安装后在浏览器中打开:http://localhost/或者http://127.0.0.1 如果出现It works!证明apache安装成功. 2.安装PHP sudo apt-get install php5 sudo apt-get install libapache2-mod-php5 sudo /etc/init.d/apache2 restart 测试: sudo vi /var/www

  • LAMP服务器性能优化技巧之Linux主机优化

    目前LAMP (Linux + Apache + MySQL + PHP) 近几年来发展迅速,已经成为Web 服务器的事实标准. LAMP这个词的由来最早始于德国杂志"c't Magazine",Michael Kunze在1990年最先把这些项目组合在一起创造了LAMP的缩写字.这些组件虽然并不是开开始就设计为一起使用的,但是,这些开源软件都可以很方便的随时获得并免费获得.这就导致了这些组件经常在一起使用.在过去的几年里,这些组件的兼容性不断完善,在一起的应用情形变得非常普便.为了改

  • CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)

    准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙 备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败, 正

  • Ubuntu 12.04 x64 编译安装lamp的步骤

    编译安装apache 2.4.2 复制代码 代码如下: sudo echo 'start' echo 常见错误: echo configure: error: APR not found. Please read the documentation. echo 解决办法: wget http://labs.renren.com/apache-mirror/apr/apr-1.4.6.tar.bz2 tar -jxvf apr-1.4.6.tar.bz2 cd apr-1.4.6 ./config

  • CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)运行环境步骤

    一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代表的方面功能非常强大的组件. LAMP这个词的由来最早始于德国杂志"c't Magazine",Michael Kunze在1990年最先把这些项目组合在一起创造了LAMP的缩写字.这些组件并不是开始就设计为一起使用的,但是,这些软件都是开源的,可以很方便的随时获得并免费使用,这就导致了这些组件

  • Ubuntu下图形化LAMP环境配置教程(linux)

    按照<Ubuntu下LAMP环境配置教程(linux)>(点击打开链接)搞好LAMP的环境之后,就可以利用gredit文本编辑器去写php,然后利用终端去查询mysql里面的内容,但是,这种环境还挺粗糙的,没有开发的IDE,查询数据库还要输入一大堆命令,不适合php的开发. 此时你可以安装Aptana作为php开发的IDE,这款工具在<[HTML]一款不错的前端开发IDE--Aptana Studio>(点击打开链接)已经介绍过了.使用Mysql WorkBeach作为Ubuntu

  • linux服务器系统中手动配置lamp服务器的经验分享

    LAMP是Linux.Apache.MySQL.PHP/Perl/Python的简称.它所组成的各组件都是开源软件,因此很方便自由的获取,导致这些组件的广泛使用,并不断完善发展,初步形成新的软件系统格局,并可能成为开源软件系统工程化的核心模式. 要安装比较新的httpd我们就必须安装比较新的apr.红帽6上就不需要再指定安装apr了,因为它默认安装的版本比较新.但是我们这里使用的是红帽5.8的版本,它给我们安装的apr版本有点老,我们要安装新版本的apr,是不是老版本的apr就要卸载了呢?这不是

随机推荐