LAMP(apache2.2/2.4、Mysql5.6、PHP5.6)、LNMP(nginx1.1、Mysql5.6、PHP5.6)、phpMyAdmin源码安装

一、安装前准备

1、安装gcc、gcc-c++编译器

yum -y install gcc gcc-c++ cmake 

2、查看防火墙状态,将80、3306端口加入

service iptables status
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT &&
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT &&
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT &&
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT &&
/etc/rc.d/init.d/iptables save

二、安装httpd2.2或httpd2.4

1、安装apr

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/apr-1.6.3.tar.gz &&
cd /usr/local/src/lamp/apr-1.6.3 &&
./configure --prefix=/usr/local/apr && make && make install

2、安装apr-util

 

yum -y install expat-devel &&
cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/apr-util-1.5.2.tar.gz &&
cd /usr/local/src/lamp/apr-util-1.5.2 &&
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config && make && make install

3、安装pcre

 

yum -y install pcre-devel &&
cd /usr/local/src/lamp &&
unzip -o /usr/local/src/lamp/pcre-8.35.zip &&
cd /usr/local/src/lamp/pcre-8.35 &&
./configure --prefix=/usr/local/pcre && make && make install

(一)安装httpd2.2

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/httpd-2.2.34.tar.gz &&
cd /usr/local/src/lamp/httpd-2.2.34 &&
./configure --prefix=/usr/local/httpd/ \
--sysconfdir=/etc/httpd/ \
--with-include-apr \
--disable-userdir \
--enable-so \
--enable-defate=shared \
--enable-expires-shared \
--enable-rewrite=shared \
--enable-static-support \
--with-apr=/usr/local/apr/ \
--with-apr-util=/usr/local/apr-util/bin \
--with-ssl \
--with-z &&
make && make install

(二)安装httpd2.4

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/httpd-2.4.29.tar.gz &&
cd /usr/local/src/lamp/httpd-2.4.29 &&
./configure --prefix=/usr/local/httpd \
--enable-mods-shared=all \
--enable-deflate  \
--enable-speling \
--enable-cache  \
--enable-file-cache  \
--enable-disk-cache \
--enable-mem-cache \
--enable-so \
--enable-expires=shared \
--enable-rewrite=shared \
--enable-static-support  \
--sysconfdir=/etc/httpd \
--with-apr=/usr/local/apr/  \
--with-apr-util=/usr/local/apr-util/  \
--with-pcre=/usr/local/pcre \
--disable-userdir &&
make && make install

4、配置Apache httpd.conf
# 打开配置文件

 

vim /etc/httpd/httpd.conf

# 修改
#ServerName www.example.com:80 改 ServerName locahost:80

 

 

 

5、配置Apache开机启动

 

 

 

cd /usr/local/httpd/bin &&
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd

修改/etc/init.d/httpd脚本,在开始处#!/bin/bash之后的行后插入
#chkconfig:345 85 15

#description:Start and stop the Apache HTTP Server 

修改httpd.conf

vim /etc/httpd/httpd.conf

#ServerName www.example.com:80 改为 ServerNamelocalhost:80

# 增加服务

chkconfig --add httpd &&
chkconfig --level 2345 httpd on

测试apache是否安装成功:启动apache

/usr/local/httpd/bin/apachetcl start 或 service httpd start

三、安装mysql


1、安装cmake[可省略]

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/cmake-3.10.2.tar.gz &&
cd /usr/local/src/lamp/cmake-3.10.2 &&
 ./configure && make && make install

或直接用yum

 

yum install -y cmake

2、安装ncurses-devel

 

yum install -y ncurses-devel

3、创建所需data目录

 

cd /usr/local/src/ &&
mkdir -p /data/mysql

4、创建mysql用户和mysql组

 

groupadd mysql &&
useradd -g mysql mysql

5、cmake编译安装

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/mysql-5.6.35.tar.gz  &&
cd /usr/local/src/lamp/mysql-5.6.35  &&
rm -rf CMakeCache.txt &&
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=/usr/local/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 &&
make && make install

6、拷备配置文件及启动文件到指定目录下

cp /etc/my.cnf  /etc/my.cnf.bak &&
rm -rf /etc/my.cnf &&
cd /usr/local/mysql  &&
cp support-files/my-default.cnf /etc/my.cnf &&
cp support-files/mysql.server /etc/init.d/mysqld

然后将目录'/usr/local/mysql'的所有者改为mysql:

chown -R mysql:mysql /usr/local/mysql

这时算是已经安装完成了,但是mysql中是没有数据的(即使系统自带的数据都没有),这时需要执行自带脚本,初始化mysql数据:

/usr/local/mysql/scripts/mysql_install_db \
--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

执行完成后,你会发现/usr/local/mysql/data 目录下多了一些文件,这些就是mysql的数据文件了,然后启动mysql,这时要注意,我们上面指定配置文件位于'/etc'目录下,但
是我们为了方便,想把mysql配置文件放到'/usr/local/mysql/',这时我们需要把'/etc/my.conf'更改一下名称:
mv /etc/my.cnf  /etc/my.cnf.bak
这时mysql 在'/etc'目录下找不到,就会到'$basedir'下去找,也就是'/usr/local/mysql/'目录,此时mysql的安装工作算是完了,下面就要启动了,你会发现使用使用:

/usr/local/mysql/bin/mysql start

无法启动,报错为:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

之前笔者怎么弄都不行,即使建立'/var/lib/mysql/mysql.sock' 后来终于知道,原来不是怎么启动的,而是:

/usr/local/mysql/support-files/mysql.server start

然后,测试下:

/usr/local/mysql/bin/mysql -u root
show databases;

更改登录密码:

mysql -u root
use mysql;
update user set password=PASSWORD("这里输入root用户密码") where User='root';
flush privileges;

7、安装phpmyadmin

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/phpMyAdmin-4.7.0-all-languages.tar.gz  &&
mv phpMyAdmin-4.7.0-all-languages  /usr/local/httpd/htdocs/phpmyadmin &&
cd /usr/local/httpd/htdocs/phpmyadmin &&
cp config.sample.inc.php config.inc.php

编辑config.inc.php

 

$cfg['blowfish_secret']=''; //这里不可为空 随便填一串字符
$cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address
$cfg['Servers'][$i]['port'] = ''; // MySQL port - leave blank for default port
$cfg['Servers'][$i]['user'] = 'root'; // 填写 MySQL 访问 phpMyAdmin 使用的 MySQL 用户名,默认为 root。
$cfg['Servers'][$i]['password'] = ''; // 填写对应上述 MySQL 用户名的密码
重启httpd和mysql服务
service httpd restart
/usr/local/mysql/support-files/mysql.server restart

访问phpmyadmin
在浏览器输入http://服务器ip/phpmyadmin
 


四、编译安装PHP


在安装PHP之前,应先安装PHP需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP5支 持GIF、PNG和JPEG图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且中间还会穿插安装一些软件,读者可以按照本节提供的顺序安装。



1、安装libxml2

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/libxml2-2.6.32.tar.gz &&
cd /usr/local/src/lamp/libxml2-2.6.32 &&
./configure --prefix=/usr/local/libxml2 &&
make && make install

2、安装libmcrypt

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/libmcrypt-2.5.7.tar.gz &&
cd /usr/local/src/lamp/libmcrypt-2.5.7 &&
./configure --prefix=/usr/local/libmcrypt &&
make && make install

3、安装zlib

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/zlib-1.2.8.tar.gz &&
cd /usr/local/src/lamp/zlib-1.2.8 &&
./configure &&
make && make install 

4、安装libpng

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/libpng-1.6.20.tar.gz &&
cd /usr/local/src/lamp/libpng-1.6.20 &&
./configure --prefix=/usr/local/libpng &&
make && make install

5、安装jpeg


安装GD2库前所需的jpeg库文件,需要自己手动创建安装需要的目录,它们在安装时不能自动创建。命令行如下:

 

mkdir /usr/local/jpeg6 &&
mkdir /usr/local/jpeg6/bin  &&
mkdir /usr/local/jpeg6/lib  &&
mkdir /usr/local/jpeg6/include &&
mkdir -p /usr/local/jpeg6/man/man1 &&
cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/jpegsrc.v6b.tar.gz &&
cd /usr/local/src/lamp/jpeg-6b &&
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static &&
make && make install

6、安装freetype

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/freetype-2.5.4.tar.gz &&
cd /usr/local/src/lamp/freetype-2.5.4 &&
./configure --prefix=/usr/local/freetype &&
make && make install

7、安装autoconf

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/autoconf-2.69.tar.gz &&
cd /usr/local/src/lamp/autoconf-2.69 &&
./configure && make && make install

如果报错提示缺少perl,则安装perl
cd /usr/local/src/lamp &&
tar zxvf perl-5.26.1.tar.gz &&
cd /usr/local/src/lamp/perl-5.26.1 &&
./Configure && make && make install

8、安装GD库

 

cd /usr/local/src/lamp &&
tar xjvf /usr/local/src/lamp/libgd-2.1.0.tar.bz2 &&
cd /usr/local/src/lamp/libgd-2.1.0 &&
./configure  --prefix=/usr/local/gd --with-jpeg=/usr/local/jpep6/ --with-freetype=/usr/local/freetype --with-png=/usr/local/libpng &&
make && make install 

9、安装curl

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/curl-7.40.0.tar.gz &&
cd /usr/local/src/lamp/curl-7.40.0 &&
./configure --prefix=/usr/local/curl &&
make && make install

10、安装libiconv

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/libiconv-1.14.tar.gz &&
cd /usr/local/src/lamp/libiconv-1.14 &&
./configure --prefix=/usr/local/libiconv &&
make && make install

11、安装mhash

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/mhash-0.9.9.9.tar.gz &&
cd /usr/local/src/lamp/mhash-0.9.9.9 &&
./configure --prefix=/usr/local/mhash &&
make && make install

12、安装openssl

 

cd /usr/local/src/lamp &&
tar zxvf /usr/local/src/lamp/openssl-1.1.0g.tar.gz &&
cd /usr/local/src/lamp/openssl-1.1.0g &&
./config &&
make && make install

13、安装基础扩展关系库

yum install -y epel-release  &&
yum install -y libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel perl-devel

安装PHP5.6

 

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/php-5.6.4.tar.gz &&
cd /usr/local/src/lamp/php-5.6.4 &&
./configure --prefix=/usr/local/php/ \
--with-config-file-path=/usr/local/php/etc/ \
--with-apxs2=/usr/local/httpd/bin/apxs \
--enable-fpm \
--with-zlib \
--with-libxml-dir \
--enable-sockets \
--with-curl \
--with-jpeg-dir \
--with-png-dir \
--with-gd \
--with-iconv-dir=/usr/local/libiconv \
--with-freetype-dir= \
--enable-gd-native-ttf \
--with-xmlrpc \
--with-mhash \
--with-mcrypt=/usr/local/libmcrypt/ \
--with-pear \
--enable-mbstring \
--enable-sysvshm \
--enable-zip \
--with-mysql=/usr/local/mysql/ \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-mysql-sock \
--with-pdo-mysql \
--disable-fileinfo  &&
make && make install

编辑PHP配置文件
复制配置文件

 

cp /usr/local/src/lamp/php-5.6.4/php.ini-production /usr/local/php/etc/php.ini

#编辑配置文件

 

vim /usr/local/php/etc/php.ini

将php扩展前面的;去掉
设置PHP支持Apache配置文件

 

vim /etc/httpd/httpd.conf

# 添加php支持。

 

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

# 添加默认索引页面index.php,再找到“DirectoryIndex”,在index.html后面加上“ index.php”

 

DirectoryIndex index.html index.php
service httpd restart

安装PHP7.1

cd /usr/local/src/lamp &&
tar -zxvf /usr/local/src/lamp/php-7.1.5.tar.gz &&
cd /usr/local/src/lamp/php-7.1.5.tar.gz
 ./configure \
--prefix=/usr/local/php7 \
--exec-prefix=/usr/local/php7 \
--bindir=/usr/local/php7/bin \
--sbindir=/usr/local/php7/sbin \
--includedir=/usr/local/php7/include \
--libdir=/usr/local/php7/lib/php \
--mandir=/usr/local/php7/php/man \
--with-config-file-path=/usr/local/php7/etc \
--with-mysql-sock=/var/lib/mysql/mysql.sock \
--with-mcrypt=/usr/include \
--with-mhash \
--with-openssl \
--with-mysql=shared,mysqlnd \
--with-mysqli=shared,mysqlnd \
--with-pdo-mysql=shared,mysqlnd \
--with-gd \
--with-iconv \
--with-zlib \
--enable-zip \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-xml \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-mbregex \
--enable-mbstring \
--enable-ftp \
--enable-gd-native-ttf \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--without-pear \
--with-gettext \
--enable-session \
--with-curl \
--with-jpeg-dir \
--with-freetype-dir \
--enable-opcache \
--enable-redis \
--enable-fpm \
--enable-fastcgi \
--with-fpm-user=www \
--with-fpm-group=www \
--without-gdbm \
--disable-fileinfo

执行上面的配置命令的结果:

configure: WARNING: unrecognized options: --with-mysql, --enable-fastcgi

编译和安装

make && make install

 

 

 

LNMP(Nginx1.1/1.8、Mysql5.6、PHP5.6)

一、执行LAMP步骤一
二、安装基础库:执行LAMP步骤二(可不安装httpd)
三、安装Mysql:执行LAMP步骤三
四、安装基础库:执行LAMP步骤四(包括PHP)

1、安装基础库

 

yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

2、安装nginx

(1) 安装nginx1.12.2

cd /usr/local/src/lamp/ &&
tar zxvf nginx-1.12.2.tar.gz &&
cd /usr/local/src/lamp/nginx-1.12.2
./configure  --prefix=/usr/local/nginx  --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log  --http-log-path=/var/log/nginx/access.log  --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock  --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre
make && make install

(2)安装nginx1.8.1

cd /usr/local/src/lamp/ &&
tar zxvf nginx-1.8.1.tar.gz &&
cd /usr/local/src/lamp/nginx-1.8.1
./configure  --prefix=/usr/local/nginx1.8  --sbin-path=/usr/local/nginx1.8/sbin/nginx --conf-path=/usr/local/nginx1.8/conf/nginx.conf --error-log-path=/var/log/nginx/error.log  --http-log-path=/var/log/nginx/access.log  --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock  --user=nginx --group=nginx --with-http_ssl_module  --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre=../pcre-8.35 --with-openssl=../openssl-1.1.0g
make && make install

3、启动nginx

/usr/local/nginx/sbin/nginx

若出现:error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
首先检测原因所在,通过下面的命令行检测:

ldd $(which /usr/local/nginx/sbin/nginx)  

解决该问题的命令行如下:

ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/libssl.so.1.1  &&
ln -s /usr/local/lib/libcrypto.so.1.1 /usr/lib/libcrypto.so.1.1

然后,执行查看:

ldd $(which /usr/local/nginx/sbin/nginx)

 

4、配置
配置php-fpm

 

 

cd /usr/local/php/etc &&
cp php-fpm.conf.default php-fpm.conf

创建用户nginx和用户组nginx

groupadd nginx &&
useradd -g nginx nginx

修改php-fpm.conf

vim php-fpm.conf
//将user = nobody group = nobody 修改为 user = nginx group = nginx
//将;pid = run/php-fpm.pid 前面的分号删掉

创建php.ini

cp /usr/local/src/lamp/php-5.6.4/php.ini-production /usr/local/php/lib/php.ini

修改/usr/local/php/lib/php.ini,打开拓展

vim /usr/local/php/lib/php.ini

拷贝php-fpm脚本至/etc/init.d目录

cp /usr/local/src/lamp/php-5.6.4/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

设置权限并启动php-fpm:

chmod 755 /etc/init.d/php-fpm &&
/etc/init.d/php-fpm start  &&
chkconfig --add php-fpm

最后,给出php-fpm以服务的方式启动、停止和重启:

service php-fpm start
service php-fpm stop
service php-fpm reload

5、配置支持php

cd /usr/local/nginx/conf
vim  nginx.conf
user   nginx  nginx;  #修改nginx运行账号为:www组的www用户
index  index.php index.html index.htm;   #增加index.php
location ~ \.php$ {
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        include        fastcgi_params;
}
#取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径


文件上传与下载
文件上传命令为rz,下载命令为sz,但是Linux可能没有安装该上传工具,所以输入rz和sz的时候会提示找不到该命令。所以需要需要使用命令安装下该工具。在命令行输入:

yum install -y lrzsz

安装Git:http://www.cnblogs.com/YingYue/p/6058333.html

 

Apache更改访问目录(目录为/www)

vim /etc/httpd/httpd.conf
DocumentRoot "/www"
<Directory />
     Options FollowSymLinks
     AllowOverride None
     Order deny,allow
     Deny from all
     Allow from all#加上这一行
</Directory>
配置多个虚拟主机
vim /etc/httpd/extra/httpd-vhosts.conf
清空内容添加配置
<VirtualHost *:80>
    DocumentRoot "/www"
    ServerName  www.gps.com
</VirtualHost>

Nginx更改访问目录(目录为/www)

vim /usr/local/php/lib/php.ini
去掉session.save_path = "/tmp"前面的";",防止访问phpmyadmin出现session报错
vim /usr/local/nginx/conf/nginx.conf
location / {
    root   /www;
    index  index.php  index.html index.htm;
}
location ~ \.php$ {
     root           /www;
     fastcgi_pass   127.0.0.1:9000;
     fastcgi_index  index.php;
     fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
     include        fastcgi_params;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值