lnamp环境的安装搭建

准备工作:

最小化安装centos6.5

软件包目录存放

/usr/local/src/

清理已经安装包

rpm -e httpd
rpm -e mysql
rpm -e php
yum -y remove httpd
yum -y remove mysql
yum -y remove php

#搜索apache包
rpm -qa http*

#强制卸载apache包
rpm -e --nodeps 查询出来的文件名

#检查是否卸载干净
rpm -qa|grep http*

selinux可能会致使编译安装失败,我们先禁用它。永久禁用,需要重启生效

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

临时禁用,不需要重启 setenforce 0

安装必备工具

yum -y install make gcc gcc-c++ gcc-g77 flex bison file libtool libtool-libs autoconf 
kernel-devel libjpeg libjpeg-devel libpng libpng-devel libpng10 libpng10-devel gd gd-devel
freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glib2 glib2-devel bzip2
bzip2-devel libevent libevent-devel ncurses ncurses-devel curl curl-devel e2fsprogs
e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel gettext
gettext-devel ncurses-devel gmp-devel pspell-devel unzip libcap lsof

安装mysql5.6.17

按照标准需要给mysql创建所属用户和用户组

创建群组
groupadd mysql
创建一个用户,不允许登陆和不创主目录 
useradd -s /sbin/nologin -g mysql -M mysql
检查创建用户
tail -1 /etc/passwd

centos最小化安装后,会有mysql的库因此先卸载!

检查安装与否
rpm -qa|grep mysql 
强制卸载 
rpm -e mysql-libs-5.1.73-3.el6_5.x86_64 --nodeps

MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具。 因此,我们首先要在系统中源码编译安装cmake工具。

wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2.tar.gz 
tar zxvf cmake-2.8.12.2.tar.gz 
cd cmake-2.8.12.2 
./configure 
make && make install

使用cmake来编译安装mysql5.6.17

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.17.tar.gz
tar zxvf mysql-5.6.17.tar.gz
cd mysql-5.6.17
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_SSL=system
make && make install

修改/usr/local/mysql权限

chmod +w /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql

关于my.cnf配置文件:

在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索”$basedir/my.cnf” 就是安装目录下 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置! 注意:在CentOS 6.x版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字。 如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。 由于我们已经卸载了最小安装完成后的mysq库所以,就没必要操作了。

进入support-files目录

cd support-files/
如果还有my.cnf请备份
mv /etc/my.cnf /etc/my.cnf.bak
如果愿意也可以复制配置文件到etc下
cp my-default.cnf /etc/my.cnf

执行初始化配置脚本,创建系统自带的数据库和表,注意配置文件的路径

/usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

 

拷贝mysql安装目录下support-files服务脚本到init.d目录

 

#拷贝脚本
cp support-files/mysql.server /etc/init.d/mysqld
#赋予权限
chmod +x /etc/init.d/mysqld

 

设置开机启动

 

chkconfig mysqld on
启动MySQL
service mysqld start
或者
/etc/init.d/mysql start

 

MySQL5.6.x启动成功后,root默认没有密码,我们需要设置root密码。 设置之前,我们需要先设置PATH,要不,不能直接调用mysql

 

修改/etc/profile文件
vi /etc/profile
在文件末尾添加
PATH=/usr/local/mysql/bin:$PATH
export PATH

 

让配置立即生效

 

source /etc/profile

 

登陆测试,默认是没有密码,直接回车就可进入

 

mysql -uroot -p

 

设置mysql密码

 

/usr/local/mysql/bin/mysqladmin -uroot -p password '你的密码'

 

登陆进命令行模式

 

mysql -uroot -p

 

查看用户

 

select user,host from mysql.user;

 

删除不必要的用户

 

drop user ""@localhost;
drop user ""@c65mini.localdomain; 
drop user root@c65mini.localdomain; 
drop user root@'::1';

 

赋予账号远程访问的权限

 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY '你的密码' WITH GRANT OPTION; 
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'c65mini.localdomain' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

 

关于删除MySQL的默认root用户参考:http://blog.chinaunix.net/uid-16844903-id-3377690.html

 

其它一些信息查询: 检查mysql版本

 

mysql -uroot -p"密码" -e "select version();"

 

验证mysql安装路径

 

ls -ld /usr/local/mysql/

如果mysql的bogod.pid报错请参考
http://www.centoscn.com/mysql/2016/0515/7235.html
https://segmentfault.com/a/1190000005033814
http://www.cnblogs.com/xiongpq/p/3384681.html

phpmyadmin 安装
到https://www.phpmyadmin.net/downloads/下载phpmyadmin
wget https://files.phpmyadmin.net/phpMyAdmin/4.6.4/phpMyAdmin-4.6.4-all-languages.tar.gz

安装Apache2.4

apr-1.5.1.tar.bz2

apr-util-1.5.4.tar.bz2

pcre-8.36.tar.bz2

这些是Apache依赖的一些安装包,解压,安装。

cd apr-1.5.1
./configure --prefix=/usr/local/apr
make && make install

cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install


cd pcre-8.36
./configure
make && make instal

都完成后正式安装Apache

cd httpd-2.4.10
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-so --enable-rewrite
make && make install

cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd

service httpd start

测试是否安装成功



下载PHP5.6
wget http://museum.php.net/php5/php-5.6.2.tar.gz
tar zxvf php-XXX
cd php-XXXXX
./configure \
--prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs \
--with-libxml-dir=/usr/include/libxml2 \
--with-config-file-path=/usr/local/php/etc/ \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-gd --enable-gd-native-ttf \
--with-zlib --with-mcrypt \
--with-pdo-mysql=/usr/local/mysql \
--enable-shmop --enable-soap --enable-sockets \
--enable-wddx --enable-zip --with-xmlrpc --enable-fpm \
--enable-mbstring --with-zlib-dir --with-bz2 --with-curl \
--enable-exif --enable-ftp --with-jpeg-dir=/usr/lib \
--with-png-dir=/usr/lib --with-freetype-dir=/usr/lib/

make && make install

修改fpm配置php-fpm.conf.default文件名称

mv /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

复制php.ini配置文件

cp php.ini-production /usr/local/php/etc/php.ini

复制php-fpm启动脚本到init.d

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

赋予执行权限

chmod +x /etc/init.d/php-fpm

添加为启动项

chkconfig --add php-fpm

设置开机启动

chkconfig php-fpm on

按照标准,给php-fpm创建一个指定的用户和组

创建群组
groupadd www
创建一个用户,不允许登陆和不创主目录 
useradd -s /sbin/nologin -g www -M www

立即启动php-fpm

service php-fpm start
#或者
/etc/init.d/php-fpm start
apache配置文件httpd.conf相关修改以支持PHP
vim /usr/local/apache/conf/httpd.conf
1. 添加php支持。
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
2. 添加默认索引页面index.php,再找到“DirectoryIndex”,在index.html后面加上“ index.php”
DirectoryIndex index.html index.php
3. 不显示目录结构,找到“Options Indexes FollowSymLinks”,修改为
Options FollowSymLinks
4. 开启Apache支持伪静态,找到“AllowOverride None”,修改为
AllowOverride All
保存httpd.conf配置,然后再执行以下两行命令
 chown -R nobody. /usr/local/apache/htdocs/
chmod -R 777 /usr/local/apache/htdocs/
 service httpd restart

安装nginx1.7

nginx所需的依赖关系,一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。如果系统已经yum 安装了这些库也没关系,无需卸载。直接编译安装最新的就可以了。为了一次性完成编译,先准备编译下面的依赖关系!

1.安装PCRE库

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.gz 
tar -zxvf pcre-8.35.tar.gz
cd pcre-8.35
./configure
make && make install

2.安装zlib库

wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make && make install

3.安装ssl

自由选择是否需要编译
wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz
tar -zxvf openssl-1.0.1g.tar.gz
wget http://nginx.org/download/nginx-1.7.0.tar.gz
tar zxvf nginx-1.7.0.tar.gz
cd nginx-1.7.0
./configure \
--user=www \
--group=www \
--prefix=/usr/local/nginx \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-pcre=/usr/local/src/pcre-8.35 \
--with-zlib=/usr/local/src/zlib-1.2.8 \
--with-openssl=/usr/local/src/openssl-1.0.1g \
--add-module=/usr/local/src/ngx_pagespeed-1.8.31.2-beta \

启动nginx
cd /usr/local/nginx/sbin/nginx



 



















posted @ 2016-08-26 13:22  小凯全栈开发  阅读(348)  评论(0)    收藏  举报