centos7下的LAMP安装
##正常安装LAMP
httpd 源码安装
**依赖**
yum -y install gcc gcc-c++
tar -jxvf apr-1.5.1.tar.bz2
cd apr-1.5.1
./configure --prefix=/usr/local/apr && make && make install
tar -jxvf apr-util-1.5.2.tar.bz2
cd apr-util-1.5.2
./configure --with-apr=/usr/local/apr/ --prefix=/usr/local/apr-util
make && make install
tar -zxvf pcre-8.32.tar.gz
cd pcre-8.32
./configure --help
./configure --prefix=/usr/local/pcre
make && make install
tar -zxvf httpd-2.4.41.tar.gz
cd httpd-2.4.41
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --prefix=/usr/local/apache2 --enable-so
make && make install
/usr/local/apache2/bin/apachectl -k start
mysql源码安装:https://www.cnblogs.com/lisilin/p/11990128.html
php的源码安装
1.安装gcc和依赖环境
yum -y install gcc gcc-c++ libxml2-devel pcre-devel zlib-devel bzip2-devel libcurl-devel libjpeg-devel libjpeg-turbo-devel libpng-devel
2.检测环境并启动相关功能
./configure --prefix=/usr/local/php --with-config-file-path --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-mbstring --enable-fpm --with-gettext --with-iconv --enable-bcmath --with-zlib --enable-zip --with-gd --with-curl --with-bz2 --with-apxs2=/usr/local/apache2/bin/apxs
make && make install
php自带了配置文件模板,我们复制到指定路径下就可以使用
php配置文件
cp php.ini-production /etc/php.ini
php-fpm脚本
cp php-5.5.38/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chmod 755 /etc/rc.d/init.d/php-fpm
php-fpm配置文件
cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
启动php-fpm
service php-fpm start
##脚本安装 LAMP
更新rpm软件包
yum -y update
##时间稍长 出去抽支烟
vim install_LAMP.sh
function check_ok(){
if [ $? -eq 0 ]
then
continue
else
echo "please check error"
exit
fi
}
function yum(){
yum -y install gcc gcc-c++ prce-devel openssl-devel php php-mysql php-gd php-fpm
}
function install_Apache(){
tar -jxvf apr-1.5.1.tar.bz2
cd apr-1.5.1
./configure --prefix=/usr/local/apr && make && make install
cd /root/
tar -jxvf apr-util-1.5.2.tar.bz2
cd apr-util-1.5.2
./configure --with-apr=/usr/local/apr/ --prefix=/usr/local/apr-util
make && make install
cd /root/
tar -zxvf pcre-8.32.tar.gz
cd pcre-8.32
./configure --prefix=/usr/local/pcre
make && make install
cd /root/
tar -zxvf httpd-2.4.41.tar.gz
cd httpd-2.4.41
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --prefix=/usr/local/apache2 --enable-so
make && make install
cd /root
}
function install_mysql(){
cd mysql-5.6.38
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -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
useradd -M -s /sbin/nologin mysql mkdir -p /data/mysql chown -R mysql:mysql /data/mysql/ chown -R mysql:mysql /usr/local/mysql/
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld sed -i 's#^datadir=#datadir=/data/mysql#' /etc/init.d/mysqld sed -i 's#^basedir=#basedir=/usr/local/mysql#' /etc/init.d/mysqld
service mysqld start chkconfig --add mysqld chkconfig mysqld on
echo "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile
}
function set_lamp(){
sed -i '/AddType application/x-gzip.gz .tgz/a AddType application x-httpd-php .php ' /usr/local/apache2/conf/httpd.conf
sed -i 's#index.html#index.html index.php#' /usr/local/apache2/conf/httpd.conf
check_ok
echo '<?php phpinfo(); ?>' /var/www/html/index.php
/usr/local/apache2/bin/apachectl -k start
check_ok
service php-fpm start
check_ok
curl -I localhost/index.php
check_ok
}
function install_lamp(){
yum
check_ok
install_mysql
check ok
install_Apache
check_ok
set_lamp
check_ok
}
read -p "please input you want:" input
case ${input} in
1)
install_lamp
;;
*)
esac