linux安装配置lamp
mysql + apache + openssl + PHP + gd + libpng + libjpeg + freetype2 + zlib(这个很重要很多都要用.) + ZendOptimizer +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 "dboomysql"
OK...MySQL是安装完了 ...
#p#
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%';
#p#
Zlib
这个很重要....吸取以前的教训.直接默认安装
- # tar -zxvf zlib-1.2.2.tar.gz
- # cd zlib-1.2.2
- # ./configure
- # make
- # make install
#p#
libjpeg
这个很傻帽.不能自己创建文件夹.试了就知道,在make install那步当中
- # ./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
- # make
- # make install
出现问题的文件夹就自己创建一下.OK
#p#
libpng
- # cp scripts/makefile.linux makefile
- # make (若是提示找不到zlib库文件或者头文件,多半是makefile文件里zlib的默认路径有误。可编辑makefile文件,找到zlib项并重新指定路径到zlib路径,建议还是默认安装)。
- # make install
- freetype
- ./configure --prefix=/usr/local/ freetype
- make
- make install
#p#
libxml
- ./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 了
#p#
apache
- # ./configure --prefix=/usr/myz/apache --sysconfdir=/etc --enable-so --enable-track-vars --enable-rewrite --with-z-dir=/usr/local/lib
- # make
- # make install
sysconfdir是配置文件目录
so是允许so
track-vars为启动cookie的get/post等追踪功能
rewrite重写
zdir zlib压缩
apache 配置
- vi /etc/httpd.conf
要改的有如下几处:
找到LoadModule php5_module modules/libphp5.so
让php5以动态模块方式(DSO)加载在apache上。apache在启动后去加载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设置默认首页。并且是有先后顺序的。
- # 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
就会开启服务了,同理service httpd stop就是停止服务。还可以service httpd restart。不过这个没有什么提示信息,你可以自己编写个shell脚本,加入一些提示信息就显得好看多了。
这里启动会出现一点错误:
httpd could not reliably determine
需要在httpd.conf 中的ServerName:www.example.com:80下面加上
www.yourdomain.com:80
php
- # ./configure --prefix=/usr/myz/php \
- --with-apxs2=/usr/myz/apache/bin/apxs \
- --with-config-file-path=/etc \
- --enable-safe-mode \
- --with-zlib=/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=/user/local/lib \
- --enable-xsl=/usr/local/lib \
- --with-openssl=/usr/local/lib \
- --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,libxslt
我用的是5.2.5有的东西是默认的enable 比如cli
- make
- make install
复制php.ini-recommended为php.ini,并存放到/etc/目录下.
在Linux下安装lamp就这么简单。结束 ...
【编辑推荐】