您的位置:首页 > 其它

源码搭建lnmp环境

2014-11-26 19:48 387 查看
关闭防火墙:
[root@CentOS64_DB ~]# service iptables stop
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
[root@CentOS64_DB ~]# set enforce 0
安装相关依赖包:
[root@CentOS64_DB ~]# yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype* pcre-devel

一、nginx

[root@CentOS64_DB ~]# mkdir -p /usr/local/src/
[root@CentOS64_DB ~]# cd /usr/local/src/
[root@CentOS64_DB src]# ll
total 47080
-rw-r--r--. 1 root root 32821451 May 16 2014 mysql-5.6.16.tar.gz
-rw-r--r--. 1 root root 721002 May 16 2014 nginx-1.3.1.tar.gz
-rw-r--r--. 1 root root 14596605 May 16 2014 php-5.4.13.tar.gz
[root@CentOS64_DB src]# tar xf nginx-1.3.1.tar.gz
[root@CentOS64_DB src]# cd nginx-1.3.1
[root@CentOS64_DB nginx-1.3.1]# ./configure --prefix=/usr/local/nginx
Configuration summary + using system PCRE library + OpenSSL library is not used + md5: using system crypto library + sha1: using system crypto library + using system zlib library
nginx path prefix: "/usr/local/nginx" nginx binary file: "/usr/local/nginx/sbin/nginx" nginx configuration prefix: "/usr/local/nginx/conf" nginx configuration file: "/usr/local/nginx/conf/nginx.conf" nginx pid file: "/usr/local/nginx/logs/nginx.pid" nginx error log file: "/usr/local/nginx/logs/error.log" nginx http access log file: "/usr/local/nginx/logs/access.log" nginx http client request body temporary files: "client_body_temp" nginx http proxy temporary files: "proxy_temp" nginx http fastcgi temporary files: "fastcgi_temp" nginx http uwsgi temporary files: "uwsgi_temp" nginx http scgi temporary files: "scgi_temp"
[root@CentOS64_DB nginx-1.3.1]# make && make install
[root@CentOS64_DB nginx-1.3.1]# cd /usr/local/nginx/
[root@CentOS64_DB nginx]# vim /etc/init.d/nginx

[root@CentOS64_DB nginx]# chmod +x /etc/init.d/nginx
[root@CentOS64_DB nginx]# chkconfig --add nginx
[root@CentOS64_DB nginx]# chkconfig nginx on
[root@CentOS64_DB nginx]# service nginx start
Starting nginx: [ OK ]
[root@CentOS64_DB nginx]# netstat -anlp | grep :80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 12248/nginx
[root@CentOS64_DB nginx]#



二、MySQL

[root@CentOS64_DB nginx]# cd /usr/local/src/
[root@CentOS64_DB src]# groupadd mysql
[root@CentOS64_DB src]# useradd -r -g mysql mysql
[root@CentOS64_DB src]# tar xf mysql-5.6.16.tar.gz
[root@CentOS64_DB src]# cd mysql-5.6.16
[root@CentOS64_DB mysql-5.6.16]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
[root@CentOS64_DB mysql-5.6.16]# make && make install
[root@CentOS64_DB mysql-5.6.16]# chown -R mysql.mysql /usr/local/mysql/
[root@CentOS64_DB mysql-5.6.16]# cd /usr/local/mysql/scripts/
[root@CentOS64_DB scripts]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
[root@CentOS64_DB scripts]# cd /usr/local/mysql/support-files/
[root@CentOS64_DB support-files]# cp mysql.server /etc/rc.d/init.d/mysql
[root@CentOS64_DB support-files]# cp my-default.cnf /etc/my.cnf
cp: overwrite `/etc/my.cnf'? y
[root@CentOS64_DB support-files]# chkconfig --add mysql
[root@CentOS64_DB support-files]# chkconfig mysql on
[root@CentOS64_DB support-files]# service mysql start
Starting MySQL... SUCCESS!
[root@CentOS64_DB support-files]# ln -s /usr/local/mysql/bin/* /usr/bin/
[root@CentOS64_DB support-files]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.6.16 Source distribution
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

三、PHP

./configure
--prefix=/usr/local/php #指定安装目录
--enable-fpm #必须,执行后会生成可执行的fpm ATPI
--with-mysql=/usr/local/mysql/ #指定mysql的安装路径
--with-mysqli=/usr/local/mysql/bin/mysql_config #这两参数是为了整合mysql
--with-gd #php连接gd库,要确认系统已安装libpng跟libpng-devel包
[root@CentOS64_DB support-files]# cd /usr/local/src/
[root@CentOS64_DB src]# tar xf php-5.4.13.tar.gz
[root@CentOS64_DB src]# cd php-5.4.13
[root@CentOS64_DB php-5.4.13]# ./configure --prefix=/usr/local/php --enable-fpm --with-mysql=/usr/local/mysql/ --with-mysqli=/usr/local/mysql/bin/mysql_config --with-gd
[root@CentOS64_DB php-5.4.13]# make && make install
Build complete.
Don't forget to run 'make test'.

Installing PHP CLI binary: /usr/local/php/bin/
Installing PHP CLI man page: /usr/local/php/php/man/man1/
Installing PHP FPM binary: /usr/local/php/sbin/
Installing PHP FPM config: /usr/local/php/etc/
Installing PHP FPM man page: /usr/local/php/php/man/man8/
Installing PHP FPM status page: /usr/local/php/php/fpm/
Installing PHP CGI binary: /usr/local/php/bin/
Installing build environment: /usr/local/php/lib/php/build/
Installing header files: /usr/local/php/include/php/
Installing helper programs: /usr/local/php/bin/
program: phpize
program: php-config
Installing man pages: /usr/local/php/php/man/man1/
page: phpize.1
page: php-config.1
Installing PEAR environment: /usr/local/php/lib/php/
[PEAR] Archive_Tar - installed: 1.3.7
[PEAR] Console_Getopt - installed: 1.3.0
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util - installed: 1.2.1
[PEAR] PEAR - installed: 1.9.4
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/usr/local/src/php-5.4.13/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f /usr/local/php/bin/phar.phar /usr/local/php/bin/phar
Installing PDO headers: /usr/local/php/include/php/ext/pdo/
[root@CentOS64_DB php-5.4.13]#
[root@CentOS64_DB php-5.4.13]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@CentOS64_DB php-5.4.13]# /usr/local/php/sbin/php-fpm
[root@CentOS64_DB php-5.4.13]# netstat -anlp | grep php-fpm




四、Nginx整合PHP

启用在nginx的配置文件nginx.conf里面子带有加载PHP的内容
[root@CentOS64_DB php-5.4.13]# vim /usr/local/nginx/conf/nginx.conf
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name; include fastcgi_params; }
[root@CentOS64_DB php-5.4.13]# cd /usr/local/nginx/html/
[root@CentOS64_DB html]# vim phpinfo.php
<?phpphpinfo();?>
[root@CentOS64_DB html]# service nginx reload
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
Reloading nginx: [ OK ]




[root@CentOS64_DB html]# vim index.php
<?php$link=mysql_connect('localhost','root','');if($link) echo "<center><h1>Connect MySQL Server Success.</h1></center>";else echo "Connect MySQL Server Faile";mysql_close();?>




本文出自 “Unix-like” 博客,请务必保留此出处http://alipay.blog.51cto.com/7119970/1582963
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: