lnmp开发环境

来源:互联网 发布:c语言循环队列 编辑:程序博客网 时间:2024/06/04 01:11

虚拟机:
VirtualBox4.3.2
新建虚拟机->设置共享目录到E:/wwwroot->设置端口转发:
SSH TCP 192.168.56.1:22 10.0.2.15:22
HTTP TCP 192.168.56.1:80 10.0.2.15:80

操作系统:
最小化安装CentOS5.10(只需xxx.1of9.iso)
163http://mirrors.163.com/.help/CentOS5-Base-163.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
mv CentOS5-Base-163.repo CentOS-Base.repo
yum makecache
yum -y install wget man make gcc gcc-c++ gcc44 gcc44-c++ autoconf
#VBoxGuestAdditions.iso
mount /dev/cdrom /mnt
yum -y install kernel-devel
ln -s /usr/src/kernels/2.6.18-371.1.2.el5-x86_64/ /usr/src/linux
cd /mnt
sh VBoxLinuxAdditions.run
cd /media/sf_wwwroot
umount /dev/cdrom
/sbin/iptables -N RH-Firewall-1-INPUT
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables save
service iptables restart

安装包:
http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.34.tar.gz
http://nginx.org/download/nginx-1.4.4.tar.gz
http://cn2.php.net/distributions/php-5.4.22.tar.bz2
http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2
http://downloads.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz
http://nchc.dl.sourceforge.net/project/mhash/mhash/0.9.9.9/mhash-0.9.9.9.tar.gz
http://download.redis.io/releases/redis-2.6.16.tar.gz
http://fallabs.com/tokyocabinet/tokyocabinet-1.4.48.tar.gz
http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz
https://github.com/nicolasff/phpredis
https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz
http://pecl.php.net/get/memcached-2.1.0.tgz
http://pecl.php.net/get/tokyo_tyrant-0.7.0.tgz

before:
yum -y install cmake bison ncurses-devel
yum -y install pcre-devel openssl openssl-devel bzip2-devel
yum -y install libxml2 libxml2-devel curl curl-devel
yum -y install libpng libpng-devel libjpeg libjpeg-devel
cd libmcrypt-2.5.8 && ./configure && make && make install
cd mhash-0.9.9.9 && ./configure && make && make install
cd mcrypt-2.6.8
LD_LIBRARY_PATH=/usr/local/lib ./configure
make && make install
groupadd mysql
useradd -r -g mysql mysql
useradd -M -s /sbin/nologin www
usermod -G vboxsf www #virtualbox

mysql(5.5.34)
tar xzf mysql-5.5.34.tar.gz
cd mysql-5.5.34
cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysqld.sock \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0
make && make install
cd /usr/local/mysql/support-files/my-huge.cnf /etc/my.cnf
chown -R mysql:mysql /usr/local/mysql
su - mysql
cd /usr/local/mysql
cp scripts/mysql_install_db .
./mysql_install_db --user=mysql
exit
echo "/usr/local/mysql/bin/mysqld_safe --user=mysql > /dev/null 2>&1 &" >> /etc/rc.local
--------------

nginx(1.4.4):
./configure --prefix=/usr/local/nginx
make && make install
vi /usr/local/nginx/conf/nginx.conf
  user=www;
  error_log off;
  http: access_log off; gzip_types text/plain application/x-javascript text/css application/xml image/gif  application/octet-stream;
  http: sendfile off;
  http-server: server_name vm.boyaa.com;
  root /media/sf_wwwroot;
echo "/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf > /dev/null 2>&1 &" >> /etc/rc.local
--------------

php(5.4.22):
./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-mysql-sock=/usr/local/mysql/mysqld.sock \
--with-gd \
--with-iconv \
--with-zlib \
--with-curl \
--with-curlwrappers \
--with-fpm-user=www \
--with-fpm-group=www \
--with-xmlrpc \
--with-gettext \
--with-mcrypt \
--without-pear \
--enable-xml \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--enable-gd-native-ttf \
--enable-pcntl \
--enable-sockets \
--enable-zip \
--enable-soap \
--enable-session \
--enable-ftp \
--enable-calendar \
--enable-ctype \
--enable-exif \
--disable-ipv6 \
--disable-phar
cp php.ini-production /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php.ini
 display_errors = On
 log_errors = Off
 date.timezone = PRC
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
vi /usr/local/php/etc/php-fpm.conf
 pid = run/php-fpm.pid
 log_level = error
 listen = php-fpm.sock
echo "/usr/local/php/sbin/php-fpm -D -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf" >> /etc/rc.local
vi /usr/local/nginx/conf/nginx.conf
 index index.php index.html index.htm;
 root /media/sf_wwwroot;
 fastcgi_pass unix:/usr/local/php/php-fpm.sock;
 include fastcgi.conf;
-----------------

redis(2.6.16)
cd redis-2.6.16
vi src/Makefile
 PREFIX?=/usr/local/redis
make && make install
cp redis.conf /usr/local/redis/
vi /usr/local/redis/redis.conf
 daemonize yes
 注释掉存盘#save 900 1
 #save 300 10
 #save 60 10000
 appendfsync no
 no-appendfsync-on-rewrite yes
 maxmemory 64000000
echo "/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf" >> /etc/rc.local
-----------------

tokyocabinet(1.4.48)
cd tokyocabinet-1.4.48
./configure --prefix=/usr/local/tokyocabinet
make && make install

tokyotyrant(1.1.41)
cd tokyotyrant-1.1.41
./configure --prefix=/usr/local/tokyotyrant --with-tc=/usr/local/tokyocabinet
make && make install

PHP扩展: 
a)redis:
cd phpredis
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vi /usr/local/php/etc/php.ini
 extension=redis.so

b)memcached:
cd libmemcached-1.0.16
export CC="gcc44"
export CXX="g++44"
./configure
make && make install
cd memcached-2.1.0
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vi /usr/local/php/etc/php.ini
 extension=memcached.so

c)tokyo_tyrant
cd tokyo_tyrant-0.7.0
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config \
--with-tokyo-tyrant=/usr/local/tokyotyrant \
--with-tokyo-cabinet-dir=/usr/local/tokyocabinet
make && make install
vi /usr/local/php/etc/php.ini
 extension=tokyo_tyrant.so

--------

subversion:

http://mirror.esocc.com/apache/subversion/subversion-1.8.5.tar.bz2

http://mirrors.cnnic.cn/apache/apr/apr-1.5.0.tar.gz

http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.3.tar.gz

http://www.sqlite.org/snapshot/sqlite-amalgamation-201311271348.zip

 

cd apr-1.5.0

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

make && make install

 

cd apr-util-1.5.3

./configure --prefix=/usr/local/apr --with-apr=/usr/local/apr

make && make install

 

cd subversion-1.8.5

mkdir sqlite-amalgamation

cp ../sqlite-amalgamation-201311271348/*{.c,.h} ./sqlite-amalgamation/

./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

make && make install

 

cd /media/sf_wwwroot

mkdir svnrepo

cd svnrepo

/usr/local/svn/bin/svnadmin create pubprj

echo "tsc = 123456" >> pubprj/conf/passwd

vi pubprj/conf/authz

[groups]

dev = tsc

[/]

@dev = rw

 

echo "/usr/local/svn/bin/svnserve -d -r /media/sf_wwwroot/svnrepo" >> /etc/rc.local

 

设置VirtualBox端口转发到3690

CheckOutsvn://vm.boyaa.com:3690/pubprj

CMDnetstat -an | findstr "3690" 若无,则重新VirtualBox 

 

0 0
原创粉丝点击