加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

web安装脚本

发布时间:2020-12-15 07:14:33 所属栏目:安全 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/sbin/bashexport PATH=$PATH:/bin:/sbin:/usr/sbin#检查是否root用户执行if [[ "$(whoami)" != "root" ]]; thenecho "please run this script as r

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

#!/sbin/bash
export PATH=$PATH:/bin:/sbin:/usr/sbin
#检查是否root用户执行
if [[ "$(whoami)" != "root" ]]; then
	echo "please run this script as root" >&2
	exit 1
fi

. /etc/init.d/functions

touche /tmp/install_lamp.log

#安装apache
Install_apache(){
	if [[ `rpm -qa httpd |wc -l` != 0 ]]; then
		rpm -e httpd-2.2.15-39.el6.centos.x86_64.rpm
	fi

	for (( i = 0; i < 4; i++ )); do
		yum -y install lrzsz gcc gcc-c++ pcre pcre-devel openssl 

		openssl-devel zlib zlib-devel ncurses-devel gd gd-devel
	done

	[ -d /opt/tools/ ] && cd /opt/tools/  || exit

	#安装apr
	tar xfz apr-1.5.2.tar.gz
	cd apr-1.5.2
	./configure --prefix=/usr/local/apr
	make && make install

	i=$(echo $?)
	if [[ ${i} != 0 ]]; then
		echo 'install apr is fail' >> /tmp/install_lamp.log
		exit
	elif [[ ${i} == 0 ]]; then
		echo "install apr is succ" >> /tmp/install_lamp.log
	fi

	cd ..

	#安装apr-util
	tar xfz apr-util-1.5.4.tar.gz
	cd apr-util-1.5.4
	./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
	make && make install

	i=$(echo $?)
	if [[ ${i} != 0 ]]; then
		echo 'install apr-util is fail' >> /tmp/install_lamp.log
		exit
	elif [[ ${i} == 0 ]]; then
		echo "install apr-util is succ" >> /tmp/install_lamp.log
	fi

	cd ..

	#安装apache
	tar xfz httpd-2.4.12.tar.gz
	cd httpd-2.4.12
	./configure --prefix=/usr/local/apache2.4.12 

	--enable-deflate 

	--enable-so 

	--enable-ssl 

	--enable-proxy-fcgi 

	--enable-rewrite 

	--with-zlib 

	--with-pcre 

	--with-apr=/usr/local/apr 

	--with-apr-util=/usr/local/apr-util 

	--enable-modules=most 

	--enable-mpms-shared=all 

	--with-mpm=event 

	--enable-expires 

	--enable-headers

	make && make install

	i=$(echo $?)
	if [[ ${i} != 0 ]]; then
		echo 'install apache is fail' >> /tmp/install_lamp.log
		exit
	elif [[ ${i} == 0 ]]; then
		echo "install apache is succ" >> /tmp/install_lamp.log
	fi

	cd ..

	ln -s /usr/local/apache2.4.12 /usr/local/apache
}

#安装mysql
Install_Mysql(){
	for (( i = 0; i < 4; i++ )); do
		yum -y install pcre-devel gcc-c++ gcc ncurses-devel 

		bison libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng 

		libpng-devel freetype freetype-devel zlib zlib-devel glibc 

		glibc-devel glib2 glib2-devel flex bzip2* curl* openssl-devel openssl
	done

	cd /opt/tools/

	#安装cmake
	tar xfz cmake-3.2.2.tar.gz
	cd cmake-3.2.2
	./bootstrap && 

	gmake && make install

	i=$(echo $?)
	if [[ ${i} != 0 ]]; then
		echo 'install camake is fail' >> /tmp/install_lamp.log
		exit
	elif [[ ${i} == 0 ]]; then
		echo "install camake is succ" >> /tmp/install_lamp.log
	fi

	cd ..

	#安装mysql
	mkdir /mydata/data -p
	groupadd -r mysql
	useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql
	tar xfz mysql-5.5.43.tar.gz
	cd mysql-5.5.43

	/usr/local/bin/cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.43 

	-DMYSQL_DATADIR=/mydata/data 

	-DSYSCONFDIR=/etc 

	-DWITH_INNOBASE_STORAGE_ENGINE=1 

	-DWITH_ARCHIVE_STORAGE_ENGINE=1 

	-DWITH_BLACKHOLE_STORAGE_ENGINE=1 

	-DWITH_FEDERATED_STORAGE_ENGINE=1 

	-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 

	-DWITHOUT_PARTITION_STORAGE_ENGINE=1 

	-DWITH_FAST_MUTEXES=1 

	-DENABLED_LOCAL_INFILE=1 

	-DWITH_EMBEDDED_SERVER=1 

	-DWITH_DEBUG=0 

	-DWITH_READLINE=1 

	-DWITH_SSL=bundled 

	-DWITH_ZLIB=system 

	-DWITH_LIBWRAP=0 

	-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock 

	-DDEFAULT_CHARSET=utf8 

	-DDEFAULT_COLLATION=utf8_general_ci 

	-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii 

	-DENABLED_LOCAL_INFILE=ON
	
	make && make install

	i=$(echo $?)
	if [[ ${i} != 0 ]]; then
		echo 'install mysql is fail' >> /tmp/install_lamp.log
		exit
	elif [[ ${i} == 0 ]]; then
		echo "install mysql is succ" >> /tmp/install_lamp.log
	fi

	ln -s /usr/local/mysql-5.5.43 /usr/local/mysql
	cd /usr/local/mysql 
	chown -R mysql:mysql .
	scripts/mysql_install_db --user=mysql --datadir=/mydata/data
	cp /etc/my.cnf /etc/my.cnf.bak
	cd /usr/local/mysql
	cp support-files/my-large.cnf  /etc/my.cnf
	sed -i '/thread_concurrency = 8/a datadir = /mydata/data' /etc/my.cnf
	sed -i '/datadir = /mydata/data/a log-slow-queries = /mydata/data/slow.log' /etc/my.cnf
	sed -i '/log-slow-queries = /mydata/data/slow.log/a /mydata/data/error.log' /etc/my.cnf

cat >> /etc/my.cnf << EOF

[mysqld_safe]
log-error = /mydata/data/mysql_3306.err
pid-file = /mydata/data/mysqld.pid
EOF

	#安装mysql的man
	cd /usr/local/mysql
	cp support-files/mysql.server  /etc/rc.d/init.d/mysqld
	echo "MANPATH  /usr/local/mysql/man" >>/etc/man.config
	ln -sv /usr/local/mysql/include  /usr/include/mysql
	echo '/usr/local/mysql/lib' > /etc/ld.so.conf.d/mysql.conf
	ldconfig
	echo 'PATH=$PATH:/usr/local/mysql/bin' >>/etc/profile
	source /etc/profile
	/etc/init.d/mysqld start
	/usr/local/mysql/bin/mysql --version && 

	echo -e  "e[31m mysql install is OKe[0m"
	
	#删除无用用户与测试库
	echo -e "delete from mysql.user where user='';" | mysql
	echo -e "delete from mysql.user where host='::1';" | mysql	
	echo -e "drop database test;" | mysql

}

#安装php
Install_Php(){
	for (( i = 0; i < 4; i++ )); do
		yum -y install gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel 

		libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel 

		glib2 glib2-devel flex bzip2* curl curl-devel libmcrypt libmcrypt-devel mhash mhash-devel 

		mcrypt libevent libevent-devel openssl openssl-devel
	done

	cd /opt/tools

	tar xfz php-5.6.8.tar.gz
	cd php-5.6.8
	
	./configure 

	--prefix=/usr/local/php-5.5.42 

	--with-mysql=mysqlnd 

	--with-pdo-mysql=mysqlnd 

	--with-mysqli=mysqlnd 

	--with-openssl 

	--enable-fpm 

	--enable-sockets 

	--enable-sysvshm  

	--enable-mbstring 

	--with-freetype-dir 

	--with-jpeg-dir 

	--with-png-dir 

	--with-zlib-dir 

	--with-libxml-dir=/usr 

	--enable-xml 

	--with-config-file-path=/etc 

	--with-config-file-scan-dir=/etc/php.d 

	--with-bz2 

	--with-curl 

	--with-gd

	make && make install

	i=$(echo $?)
	if [[ ${i} != 0 ]]; then
		echo 'install php is fail' >> /tmp/install_lamp.log
		exit
	elif [[ ${i} == 0 ]]; then
		echo "install php is succ" >> /tmp/install_lamp.log
	fi
	ln -s /usr/local/php-5.5.42 /usr/local/php

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

	cp sapi/fpm/init.d.php-fpm  /etc/rc.d/init.d/php-fpm
	chmod +x /etc/rc.d/init.d/php-fpm
	chkconfig --add php-fpm
	chkconfig php-fpm on
	
	cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
}


Install_apache
Install_Mysql
Install_Php

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读