手记

apache+mysql+php整理

以前整理的,在5.8环境下编译基本没出问题

yum install gcc gcc-c++ make automake autoconf kernel-devel -y


tar -xzvf zlib-1.2.3.tar.gz

cd zlib-1.2.3

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

make

make install


tar -xzvf httpd-2.2.3.tar.gz

cd httpd-2.2.3

./configure \

--prefix=/usr/local/apache \

--enable-module=so \

--enable-mods-shared=all \

--enable-rewrite=shared \

--enable-static-support \

--enable-authn-dbm=shared \

--enable-threads \

--with-mpm=worker \

--with-z=/usr/local/zlib2 \

--disable-cgid \

--disable-cgi \

--disable-userdir \


make

make install


vi /usr/local/apache/conf/extra/httpd-mpm.conf


<IfModule mpm_worker_module>

StartServers         10

ServerLimit         100

MaxClients         3000

MinSpareThreads     150

MaxSpareThreads     300

ThreadLimit         64

ThreadsPerChild     30

MaxRequestsPerChild 10000

</IfModule>


vi /usr/local/apache/conf/extra/httpd-vhosts.conf


<VirtualHost *:80>

ServerAdmin adyw@aodiansoft.com

DocumentRoot /usr/local/apache/htdocs/

ServerName test.example.com

ServerAlias teset.example.com

ErrorLog logs/test-error_log

CustomLog logs/test-access.log combined

LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %h %T" combined

<Directory "/usr/local/apache/htdocs">

Options FollowSymLinks Includes

AllowOverride All

Order deny,allow

Allow from all

</Directory>

</VirtualHost>


vi /usr/local/apache/conf/httpd.conf




注释掉以下部分:

<Directory />

Options FollowSymLinks

AllowOverride None

Order deny,allow

Deny from all

</Directory>


修改DirectoryIndex为:

DirectoryIndex index.html index.shtml index.php default.php


取消注释:

AddType text/html .shtml

AddOutputFilter INCLUDES .shtml


添加应用类型:

AddType application/x-httpd-php .php .phtml

AddType application/x-httpd-php-source .phps


取消注释:

Include conf/extra/httpd-mpm.conf

Include conf/extra/DB_INFO.conf

Include conf/extra/httpd-vhosts.conf


添加监控

ExtendedStatus On

<Location /server-status>

SetHandler server-status

Order Deny,Allow

Deny from all

Allow from 117.79.239.98

Allow from 117.79.239.197

</Location>


/usr/local/apache/bin/apachectl -t

/usr/local/apache/bin/apachectl start

/usr/local/apache/bin/apachectl stop

/usr/local/apache/bin/apachectl restart


添加自启动:

echo "/usr/local/apache/bin/apachectl start" >> /etc/rc.local


yum -y install ncurses-devel libtool



tar xzvf mysql-5.1.57.tar.gz

cd mysql-5.1.57

./configure \

--prefix=/usr/local/mysql \

--enable-assembler \

--enable-profiling \

--enable-local-infile \

--enable-thread-safe-client \

--with-client-ldflags=-all-static \

--with-mysqld-ldflags=-all-static \

--with-extra-charsets=complex \

--with-big-tables \

--with-readline \

--with-ssl \

--with-embedded-server \

--with-plugins=innobase,myisam,myisammrg,partition \

--without-debug \


make && make install


useradd mysql


cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf


初始化数据库

/usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/usr/local/mysql/var


给root账号添加密码:

/usr/local/mysql/bin/mysqladmin -u root password 123456

修改管理员root密码:

/usr/local/mysql/bin/mysqladmin  -u root -p123456 password 123456


进入数据库管理界面,删除空密码账号:

mysql>

delete from user where password='';


修改配置文件:

拷贝配置文件到/etc下面重启服务


修改目录权限

cd /usr/local/mysql

chown -R root.mysql *

chown -R mysql var


/usr/local/mysql/share/mysql/mysql.server start

/usr/local/mysql/share/mysql/mysql.server stop

/usr/local/mysql/share/mysql/mysql.server restart


echo "/usr/local/mysql/share/mysql/mysql.server start" >> /etc/rc.local




tar -zxvf jpegsrc.v6b.tar.gz

cd jpeg-6b

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


mkdir /usr/local/jpeg6

mkdir /usr/local/jpeg6/include

mkdir /usr/local/jpeg6/lib

mkdir /usr/local/jpeg6/bin

mkdir /usr/local/jpeg6/man

mkdir /usr/local/jpeg6/man/man1

make

make install-lib

make install



yum install zlib-devel -y

tar -zxvf libpng-1.2.34.tar.gz

cd libpng-1.2.34

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

make

make install



tar -zxvf freetype-2.2.1.tar.gz

cd freetype-2.2.1

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

make

make install


tar -zxvf gd-2.0.33.tar.tar

cd gd-2.0.33

./configure \

--prefix=/usr/local/gd2 \

--with-zlib=/usr/local/zlib2/ \

--with-png=/usr/local/libpng2/ \

--with-jpeg=/usr/local/jpeg6/ \

--with-freetype=/usr/local/freetype2/ \

vi  gd_png.c

找到png.h改成/usr/local/libpng2/include/png.h

make && make install

{有报错 yum install perl}



安装curl-7.17.1


tar zxvf curl-7.17.1.tar.gz

cd curl-7.17.1

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

make

make install




yum -y install openssl-devel libxml2-devel



tar zxvf php-5.2.9.tar.gz

cd php-5.2.9

./configure --prefix=/usr/local/php5 \

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

--with-config-file-path=/usr/local/php5/etc \

--with-mysql=/usr/local/mysql \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--with-pdo-mysql=/usr/local/mysql/bin/mysql_config \

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

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

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

--with-freetype-dir=/usr/local/freetype2 \

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

--with-openssl \

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

--enable-zip \

--enable-soap \

--enable-sockets \

--enable-mbstring \

--enable-pdo \



cd php-5.2.9

./configure --prefix=/usr/local/php5 \

--with-config-file-path=/usr/local/php/etc \

--with-mysql=/usr/local/mysql \

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--with-pdo-mysql=/usr/local/mysql/bin/mysql_config \

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

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

--with-freetype-dir=/usr/local/freetype2 \

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

--with-openssl \

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

--enable-zip \

--enable-soap \

--enable-sockets \

--enable-mbstring \

--enable-pdo \


make && make install


mkdir -p /usr/local/php/lib/php/extensions/



将php.ini放到/usr/local/php/etc/下面




重启apache,然后查看:

phpinfo网页测试是否正常,是否支持

xx.php

<?php

phpinfo();

?>

openssl/sockets/pdo_mysql/pdo/mysql/mysqli/jpeg/png/zip等



tar zxvf libevent-1.3.tar.gz

cd libevent-1.3

./configure --prefix=/usr

make

make install



安装memcached服务


tar zxvf memcached-1.4.0.tar.gz

cd memcached-1.4.0

./configure --with-libevent=/usr

make

make install


启动:/usr/local/bin/memcached -d -m 256 -u root


检查tcp 11211端口是否打开

加入自启动:

echo "/usr/local/bin/memcached -d -m 256 -u root" >> /etc/rc.local



tar zxvf memcache-2.2.5.tgz

cd memcache-2.2.5

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make

make install

cd /usr/local/php/lib/php/extensions/

cd no-debug-zts-20060613/

mv memcache.so ../



tar zxvf mongodb-linux-i686-1.8.0.tgz

mv mongodb-linux-i686-1.8.0 /usr/local/mongodb


**** 核心一般共用 ****

创建数据存储目录

mkdir -p /data/mongodb


启动mongodb服务端

setsid /usr/local/mongodb/bin/mongod --dbpath /data/mongodb/ --logpath /usr/local/mongodb/mongodb.log --logappend --maxConns 500 --auth --port 27017


echo "setsid /usr/local/mongodb/bin/mongod --dbpath /data/mongodb/ --logpath /usr/local/mongodb/mongodb.log --logappend --maxConns 500 --auth --port 27017" >> /etc/rc.local

****************


安装mongo php扩展:

/usr/local/php/bin/pecl install mongo

{若提示不行,重启mongo和apache,然后移动.so}

出现下面的提示说明安装成功:


Build process completed successfully

Installing '/usr/local/lib/php/extensions/no-debug-non-zts-20060613/mongo.so'

install ok: channel://pecl.php.net/mongo-1.1.4

configuration option "php_ini" is not set to php.ini location

You should add "extension=mongo.so" to php.ini



tar jxvf eaccelerator-0.9.6.1.tar.bz2

cd eaccelerator-0.9.6.1/

/usr/local/php/bin/phpize

./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config

make

make install

cd ../



mkdir -p /usr/local/php/lib/php/eaccelerator_cache

chmod -R 777 /usr/local/php/lib/php/eaccelerator_cache/


移动.so 至扩展目录下

vi /usr/local/lib/php.ini


按shift+g键跳到配置文件的最末尾,加上以下配置信息:




[eaccelerator]

zend_extension="/usr/local/lib/php/extensions/eaccelerator.so"

eaccelerator.shm_size="32"  

eaccelerator.cache_dir="/usr/local/lib/php/eaccelerator_cache"

eaccelerator.enable="1"

eaccelerator.optimizer="1"

eaccelerator.check_mtime="1"

eaccelerator.debug="0"

eaccelerator.filter=""

eaccelerator.shm_max="0"

eaccelerator.shm_ttl="3600"

eaccelerator.shm_prune_period="3600"

eaccelerator.shm_only="0"

eaccelerator.compress="1"

eaccelerator.compress_level="9"

eaccelerator.keys = "disk_only"  

eaccelerator.sessions = "disk_only"

eaccelerator.content = "disk_only"


查看phpinfo是否安装成功



0人推荐
随时随地看视频
慕课网APP