#!/bin/bash
#auto make install LAMP
#by authors zhangjianghua #httpd define path variable
H_FILES=httpd-2.2..tar.gz
H_FILES_DIR=httpd-2.2.
H_PREFIX=/usr/local/httpd/ #mysql define path variable
M_FILES=mysql-5.5..tar.gz
M_FILES_DIR=mysql-5.5.
M_PREFIX=/usr/local/mysql/ #php define path variable P_FILES1=libmcrypt-2.5..tar.gz
P_FILES_DIR1=libmcrypt-2.5.
P_PREFIX1=/usr/local/lib/ P_FILES2=mhash-0.9.9.9.tar.gz
P_FILES_DIR2=mhash-0.9.9.9
P_PREFIX2=/usr/local/lib/ P_FILES3=mcrypt-2.6..tar.gz
P_FILES_DIR3=mcrypt-2.6.
P_PREFIX3=/usr/local/lib/ P_FILES4=php-5.3..tar.gz
P_FILES_DIR4=php-5.3.
P_PREFIX4=/usr/local/php/ if [ -z "$1" ];then
echo -e "\033[36m请选择下面选项:\033[0m"
echo -e "\033[32m1)编译安装Apache服务器\033[1m"
echo "2)编译安装MySQL服务器"
echo "3)编译安装PHP服务器"
echo "4)配置index.php并启动LAMP服务"
43     echo "5)部署phpMyAdmin系统"
echo -e "\033[31m使用: { /bin/sh $0 1|2|3|4|help}\033[0m"
exit
fi #auto install Apache
if [ $ -eq ];then
rpm -e httpd --nodeps
tar -zxvf $H_FILES &&cd $H_FILES_DIR ;./configure --prefix=$H_PREFIX --enable-so --enable-rewrite --enable-charset-lite --enable-cgi if [ $? -eq ];then
make &&make install
echo -e "\033[32mThe $H_FILES_DIR Server Install successfully!(Apache服务安装已完成!)\033[0m"
else
echo -e "\033[32mThe $H_FILES_DIR Server Install failed,please check...\033[0m"
exit
fi
fi #auto install Mysql
if [ $ -eq ];then
rpm -e mysql-server mysql --nodeps
tar -zxvf cmake-2.8..tar.gz -C /usr/src/ && cd /usr/src/cmake-2.8./;./configure
if [ $? -eq ];then
gmake &&gmake install
echo -e "\033[32mThe cmake Server Install successfully!(cmake编译安装完成!)\033[0m"
else
echo -e "\033[31mThe cmake Server Install failed,please check...(cmake安装失败!)\033[0m"
exit
fi
useradd -M -u -s /sbin/nologin mysql
cd /root
tar -zxvf $M_FILES -C /usr/src/;cd /usr/src/$M_FILES_DIR && cmake -DCMAKE_INSTALL_PREFIX=$M_PREFIX -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
if [ $? -eq ];then
make &&make install
echo -e "\033[32mThe mysql $M_FILES_DIR Install successfully!(MySQL服务安装已完成!)\033[0m"
else
echo -e "\033[31mThe mysql $M_FILES_DIR Install failed,please check...(Mysql安装失败!)\033[0m"
exit
fi
chown -R mysql:mysql /usr/local/mysql/
cd /usr/src/$M_FILES_DIR
cp support-files/my-medium.cnf /etc/my.cnf
$M_PREFIX/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
cd /usr/src/$M_FILES_DIR
ln -s /usr/local/mysql/bin/* /usr/local/bin/
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld stop
service mysqld start
netstat -anpt | grep 3306
fi #PHP define path variable if [ $1 -eq 3 ];then
tar -zxvf $P_FILES1 -C /usr/src/;cd /usr/src/$P_FILES_DIR1/ && ./configure && make && make install && ln -s /$P_PREFIX1/libmcrypt.* /usr/lib/
cd /root/
tar -zxvf $P_FILES2 -C /usr/src/;cd /usr/src/$P_FILES_DIR2/ && ./configure && make && make install && ln -s /$P_PREFIX2/libmhash* /usr/lib/
cd /root/
tar -zxvf $P_FILES3 -C /usr/src/;cd /usr/src/$P_FILES_DIR3/ && export LD_LIBRARY_PATH=/$P_PREFIX3:$LD_LIBRARY_PATH && ./configure && make && make install
cd /root/
tar -zxvf $P_FILES4 -C /usr/src/;cd /usr/src/$P_FILES_DIR4/ && ./configure --prefix=$P_PREFIX4 --with-mcrypt --with-apxs2=$H_PREFIX/bin/apxs --with-mysql=$M_PREFIX --with-config-file-path=$P_PREFIX4 --enable-mbstring --enable-sockets
if [ $? -eq 0 ];then
make &&make install
echo -e "\033[32mThe $P_FILES_DIR4 Server Install successfully!(PHP安装已完成!)\033[0m"
else
echo -e "\033[31mThe $P_FILES_DIR4 Server Install failed,please check...(PHP安装失败!)\033[0m"
exit
fi
fi if [ $1 -eq 4 ];then
sed -i '/DirectoryIndex/s/index.html/index.php index.html/g' $H_PREFIX/conf/httpd.conf
echo "AddType application/x-httpd-php .php" >>$H_PREFIX/conf/httpd.conf
IP=`ifconfig eth0|grep "Bcast"|awk '{print $2}'|cut -d: -f2`
echo "You can access http://$IP/" cat >$H_PREFIX/htdocs/index.php <<EOF
<?php
phpinfo();
?>
EOF
fi
if [ $1 -eq 5 ];then
tar -zxvf phpMyAdmin-4.2.5-all-languages.tar.gz
mv phpMyAdmin-4.2.5-all-languages/ /usr/local/httpd/htdocs/phpMyAdmin
cd /usr/local/httpd/htdocs/phpMyAdmin
cp config.sample.inc.php config.inc.php
if [ $? -eq 0 ];then
echo -e "\033[32mphpMyAdmin系统安装完成!\033[0m"
else
echo -e "\033[31mphpMyAdmin系统安装失败!\033[0m"
fi fi # netstat -tnl
# /usr/local/httpd/bin/apachectl -t
#/usr/local/httpd/bin/apachectl start
#ps -ef | grep http
# echo -e "\033[32m配置完成,打开浏览器测试结果\033[0m" #phpMyAdmin测试:fireorx http://192.168.1.1/phpMyAdmin &

LAMP动态网站安装脚本的更多相关文章

  1. linux web服务器及LAMP动态网站平台搭建

    (vim补:)vim另存为:x,x w 目标文件路径vim批量删除x:x,x d Web服务:基于B/S架构的web通信服务端:支持HTTP协议的网页提供程序客户端:按标记规范显示网页的浏览器程序客户 ...

  2. LAMP动态网站实例

    Zend Optimizer: 用优化代码的方法来提高PHP应用程序的执行速度.实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化.一般情况下,执行 ...

  3. CentOS下LAMP一键yum安装脚本

    本脚本适用环境: 系统支持:CentOS/Redhat/Fedora 内存要求:≥64M 硬盘要求:2GB以上的剩余空间 服务器必须配置好软件源和可连接外网 必须具有系统 root 权限 建议使用干净 ...

  4. 部署lamp动态网站(图解)

    环境拓扑如下:1.两台虚拟机要互通   2.修改selinux   +++++++++++++++++++++++++++服务器133上: 1.安装需要的组件httpd,mariadb,php   2 ...

  5. 编译LAMP部署动态网站环境

    LAMP动态网站部署架构是由一套 Linux+Apache+MySQL+PHP 组成的动态网站系统解决方案. 以下配置环境为:Linux=RHEL7 --> Apache=2.4.33 --&g ...

  6. Linux进阶之LAMP和LNMP动态网站搭建

    一.什么是LAMP LAMP=Linux Apache Mysql/MariaDB PHP/Perl/Python 这些软件都是开源免费的软件,几个程序各自是独立的,经常为了达到我们需要的效果而协同工 ...

  7. LAMP自动安装脚本

    #!/bin/bash # 功能描述:LAMP自动安装脚本 # 初始化 if [ "$(cat /etc/system-release | awk '{print $(NF-1)}' | a ...

  8. LAMP最新源码一键安装脚本

    Linux+Apache+MySQL+PHP (脚本可以选择是否安装+Pureftpd+User manager for PureFTPd+phpMyAdmin+memcache),添加虚拟主机请执行 ...

  9. LNMP、LAMP、LANMP一键安装脚本(定期更新)[转]

    这个脚本是使用shell编写,为了快速在生产环境上部署LNMP/LAMP/LANMP(Linux.Nginx/Tengine.MySQL/MariaDB/Percona.PHP),适用于CentOS/ ...

随机推荐

  1. 持续集成~Jenkins构建GitHub项目的实现

    有了前两讲的基础,这回我们就可以把github上的项目做到CI(jenkins)里了,让它自动去集成部署,持续集成~Jenkins里的NuGet和MSBuild插件,持续集成~Jenkins里的pow ...

  2. Spring Security 5中的默认密码编码器

    1.概述 在Spring Security 4中,可以使用内存中身份验证以纯文本格式存储密码. 对版本5中的密码管理过程进行了重大改进,为密码编码和解码引入了更安全的默认机制.这意味着如果您的Spri ...

  3. JAVA基础之Properties类、序列化流及打印流、commons-IO

    个人理解: Properties类是个存储String类型的键值对的集合类,可以用其存储一些关键的账号密码什么的,同时后面的注释可以很好的帮助理解,但是需要注意的是其文件中不能出现其他的符号:序列化与 ...

  4. 解决resteasy上传表单文件名乱码

    Dubbo在2.6版本后合并了dubbox的resteasy代码后,可以支持rest风格的接口发布,但是在使用form表单上传文件的时候,获取的文件名称是乱码. 下面通过对源码分析一下原因,并提供一种 ...

  5. MapReduce的编程思想(1)

    MapReduce的编程思想(1) MapReduce的过程(2) 1. MapReduce采用分而治之的思想,将数据处理拆分为主要的Map(映射)与Reduce(化简)两步,MapReduce操作数 ...

  6. LNK2005错误——重复定义错误

    编程中经常能遇到LNK2005错误——重复定义错误,其实LNK2005错误并不是一个很难解决的错误.弄清楚它形成的原因,就可以轻松解决它了. 造成LNK2005错误主要有以下几种情况: 1.重复定义全 ...

  7. ArcGIS Server 10.1发布GP服务

    ArcGIS Server 10.1发布GP服务 ArcGIS Server 10.1发布GP服务确实更简单了,只是刚使用不怎么习惯.ArcGIS Server 10.1发布GP服务需要先在ArcCa ...

  8. Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002] No such file or directory解决方法

    今天用pdo连接mysql遇到一个奇怪的问题,host设为127.0.0.1可以连接成功,设为localhost就会报如下的错误: PHP Fatal error:  Uncaught excepti ...

  9. Tomcat控制台乱码问题

    乱码效果图 解决办法 1.修改cmd的编码格式 快捷键win+R打开运行程序,输入regedit打开注册表,找到以下路劲并且修改. [HKEY_LOCAL_MACHINE\SOFTWARE\Micro ...

  10. groupmod - 修 改 群 组

    总览 SYNOPSIS groupmod [-g gid [-o]] [-n group_name ] group 描述 DESCRIPTION groupmod 命 令 会 参 照 你 命 令 列 ...