LAMP

练习:编译安装amp,提供两个基于主机名的虚拟主机

     (1) https, 部署pma

     (2) 部署wordpress

编译安装:

mariadb:

# wget 10.1.0.1:/pub/Sources/7.x86_64/mariadb/mariadb-5.5.46-linux-x86_64.tar.gz
# tar -xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
# cd /usr/local
# ln -sv mariadb-5.5.46-linux-x86_64 mysql
# cd mysql
# groupadd -r mysql
# useradd -r -g mysql mysql
# id mysql
# chown mysql:root ./*
# mkdir /mydata/data -p
# chown mysql:mysql /mydata/data
# scripts/mysql_install_db --user=mysql --datadir=/mydata/data
# vim /etc/profile.d/mysql.sh
    export PATH=/usr/local/mysql/bin:$PATH
# . /etc/profile.d/mysql.sh
# mv /etc/my.cnf{,.bak}
# cp support-files/my-small.cnf /etc/my.cnf
# vim /etc/my.cnf   // 在[mysqld]下追加
    datadir = /mydata/data
    skip_name_resolve = ON
    innodb_file_per_table = ON
# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
# service mysqld start
# chkconfig --add mysqld

httpd:

# wget 10.1.0.1:/pub/Sources/sources/httpd/httpd-2.4.10.tar.bz2
# yum groupinstall "Development Tools" "Server Platform Development" -y
# yum install pcre-devel openssl-devel libevent-devel  apr-devel apr-util-devel -y
# tar -xf httpd-2.4.10.tar.bz2
# cd httpd-2.4.10/
# ./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd \     #\表示该行未结束
--enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-modules=most \
--enable-mpms-shared=all --with-mpm=prefork --with-pcre --with-zlib --with-apr=/usr --with-apr-util=/usr
# make -j 2
# make install
# vim /etc/httpd/httpd.conf
    #<IfModule dir_module>   中修改成
    DirectoryIndex index.html index.php
    
    #<IfModule mime_module>  中追加
    AddType application/x-httpd-php .php
# vim /etc/profile.d/httpd.sh
    export PATH=/usr/local/apache2/bin:$PATH
# . /etc/profile.d/mysql.sh
# apachectl start

安装php5:

# wget 10.1.0.1:/pub/Sources/sources/php/php-5.4.40.tar.bz2 &> /dev/null
# yum install gd-devel freetype-devel libmcrypt-devel libxml2-devel -y
# tar -xf php-5.4.40.tar.bz2
# cd php-5.4.40/
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql  --with-openssl \      #\表示该行未结束
--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --enable-xml \
--enable-sockets --with-freetype-dir --with-gd --with-libxml-dir=/usr --with-zlib \
--with-jpeg-dir --with-png-dir --with-mcrypt --with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/etc/php.ini --with-config-file-scan-dir=/etc/php.d/
# make -j 2
# make install
# cd /usr/local/php
# cp php.ini-production /etc/php.ini
# mkdir /etc/php.d/
# apachectl restart

安装wordpress

# wget 10.1.0.1:/pub/Sources/sources/http/wordpress-4.3.1-zh_CN.zip
# mv wordpress-4.3.1-zh_CN.zip /usr/local/apache2/htdocs
# cd /usr/local/apache2/htdocs
# unzip wordpress-4.3.1-zh_CN.zip
# mysql
    MariaDB [(none)]> CREATE DATABESE wordpress;
    MariaDB [(none)]> GRANT ALL ON wordpress.* TO 'gm'@'localhost' IDENTIFIED BY 'gm625';
    MariaDB [(none)]> \q
# chmdo 777 wordpress

输入网址:10.1.43.101/wordpress   进行安装

LAMP

LAMP

LAMP

LAMP           

LAMP

LAMP

练习2:脚本实现amp编译安装

#!/bin/bash
#description : 编译安装LAMP
#version 0.1
#author gm
#date 20161012
#


#mariadb:
echo "wget mariadb Package."
wget 10.1.0.1:/pub/Sources/7.x86_64/mariadb/mariadb-5.5.46-linux-x86_64.tar.gz &> /dev/null && echo "wget mariadb Package secuessful."

tar -xf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
cd /usr/local
ln -sv mariadb-5.5.46-linux-x86_64 mysql

echo "add mysql group and mysql user."
groupadd -r mysql &> /dev/null
useradd -r -g mysql mysql &> /dev/null

echo "change file user:group."
cd mysql
chown mysql:root ./*
mkdir /mydata/data -p
chown mysql:mysql /mydata/data

echo "first bulid mysqldb."
scripts/mysql_install_db --user=mysql --datadir=/mydata/data && echo -e "\033[33mmysql db is secuessful.\033[0m"

echo "change PATH."
cat > /etc/profile.d/mysql.sh << end
export PATH=/usr/local/mysql/bin:$PATH
end
. /etc/profile.d/mysql.sh

echo "Add configure file."
mv /etc/my.cnf{,.bak}
cp support-files/my-small.cnf /etc/my.cnf
sed -i '/\[mysqld\]/a \datadir = /mydata/data\nskip_name_resolve = ON\ninnodb_file_per_table = ON' /etc/my.cnf

echo "Add server file."
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
service mysqld start &> /dev/null && echo -e "\033[32mmariadb server is start.\033[0m"


#httpd:
echo "wget httpd Package."
wget 10.1.0.1:/pub/Sources/sources/httpd/httpd-2.4.10.tar.bz2 &> /dev/null && echo "wget httpd Package secuessful."
yum groupinstall "Development Tools" "Server Platform Development" -y -q
yum install pcre-devel openssl-devel libevent-devel  apr-devel apr-util-devel -y -q

tar -xf httpd-2.4.10.tar.bz2
cd httpd-2.4.10/

echo "configure httpd.............." 
./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --enable-so --enable-ssl \     #\表示该行未结束
--enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork \
--with-pcre --with-zlib --with-apr=/usr --with-apr-util=/usr &> /dev/null
make -j 2  &> /dev/null
make install &> /dev/null

echo "change PATH."
cat > /etc/profile.d/httpd.sh << end
export PATH=/usr/local/apache2/bin:$PATH
end
. /etc/profile.d/mysql.sh

echo "change /etc/httpd/httpd.conf file."
echo "ServerName www.gm.com:80" >> /etc/httpd/httpd.conf
sed -i 's@^[[:space:]]*DirectoryIndex.*@& index.php@' /etc/httpd/httpd.conf
sed -i '/^[[:space:]]*AddType/a \AddType application/x-httpd-php .php' /etc/httpd/httpd.conf
apachectl start && echo -e "\033[33mhttpd is start.\033[0m"


#安装php5:
echo "wget php Package."
wget 10.1.0.1:/pub/Sources/sources/php/php-5.4.40.tar.bz2 &> /dev/null && echo "wget php Package secuessful."
yum install gd-devel freetype-devel libmcrypt-devel libxml2-devel -y -q
tar -xf php-5.4.40.tar.bz2
cd php-5.4.40/

echo "configure php................."
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql  --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config \    #\表示该行未结束
--enable-mbstring --enable-xml --enable-sockets --with-freetype-dir --with-gd --with-libxml-dir=/usr --with-zlib \
--with-jpeg-dir --with-png-dir --with-mcrypt --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc/php.ini \
--with-config-file-scan-dir=/etc/php.d/ &> /dev/null

make -j 2 &> /dev/null
make install &> /dev/null

cp php.ini-production /etc/php.ini
mkdir /etc/php.d/
apachectl restart && echo -e "\033[33mhttpd+php is start.\033[0m"


原创文章,作者:megedugao,如若转载,请注明出处:http://www.178linux.com/50733

(0)
megedugaomegedugao
上一篇 2016-10-12
下一篇 2016-10-12

相关推荐

  • 文本查找之find组合拳

    find命令不仅能帮助我们在数目众多的文件中快速找到满足条件的文本,我们还能通过find处理动作对查找到的文件进行进一步的处理。 一、find的特点:               遍历查找,因此查找速度略慢   &nbs…

    Linux干货 2016-08-15
  • CentOS6 编译安装httpd-2.4

       CentOS7的镜像中已经提供了httpd-2.4的rpm包,httpd-2.4相对于httpd2.2有较大的改进,在CentOS6下只能通过Apache官方网站提供的源码包编译安装。    有时候,我们需要应用http-2.4的某些特性,但是因为当前的发行版没有支持,所以我们需要自己编译安装。 httpd-2.…

    Linux干货 2016-07-27
  • 第九周脚本练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; awk -F: ‘{if($NF!=”/sbin/nologin”) print $1}’ /etc/passwd | wc -l 2、写一个脚本 (1) 获取当前主机的主机名,保存于ho…

    Linux干货 2017-03-30
  • 马哥教育网络班21期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 # who | cut -d' ' -f1 | uniiq 2、取出最后登录到当前系统的用户的相关信息。 # id $(who | …

    Linux干货 2016-07-12
  • PHP通过Thrift操作Hbase

    HBase是一个开源的NoSQL产品,它是实现了Google BigTable论文的一个开源产品,和Hadoop和HDFS一起,可用来存储和处理海量column family的数据。官方网址是:http://hbase.apache.org 一 、HBase访问接口 1.  Native Java API,最常规和高效的访问方式,适合Hadoop …

    Linux干货 2015-05-18
  • Week 1–Linux基础1

    一. 计算机是由什么组成的? 计算机有什么作用呢?  1.计算机是由硬件系统与软件系统两大部分组成的. 那么是什么呢?  硬件系统: 1.1 输入组件(如鼠标,键盘等); 输出组件(显示器,打印机等); 1.2 核心大脑–CPU(里面包含有 算术逻辑、控制、记忆等单元); 1.3 为了与以上2大重要部件连接的,肯定需要一个可以…

    Linux干货 2016-12-05