文章目录

  • 一键部署LAMP和LNMP架构
    • 一、安装包下载
    • 二、脚本详细
    • 三、等待安装结束即可浏览器访问验证

一键部署LAMP和LNMP架构

一、安装包下载

链接:https://pan.baidu.com/s/1rfJl51YKMPlVMI1YIRZ0eg
提取码:gf99

下载安装包和脚本放至/opt目录下,使用source执行脚本

二、脚本详细

install.tool.sh脚本

echo "============================================="
echo "1)安装LAMP架构web服务器。"
echo "2)安装LNMP架构web服务器。"
read -p "请输入你的选择:" option
if [ $option -eq 1 ] ; thensource install.httpd.shcd /optsource install.mysql.shcd /optsource install.php.shcd /optsource install.discuz.sh
else source install.Nginx.shcd /optsource install.mysql.shcd /optsource install.php.shcd /optsource install.discuz.sh
fi
clear
echo "============================================="
echo "安装完毕!"

install.httpd.sh脚本

#!/bin/bash
#初始化
yum -y install gcc gcc-c++ make pcre-devel expat-devel perl pcre
#解压安装包
cd /opt
tar -zxf /opt/apr-1.6.2.tar.gz
tar -zxf /opt/apr-util-1.6.0.tar.gz
tar -jxf /opt/httpd-2.4.29.tar.bz2
mkdir /opt/httpd-2.4.29/srclib/apr
mkdir /opt/httpd-2.4.29/srclib/apr-util
mv ./apr-1.6.2/* ./httpd-2.4.29/srclib/apr
mv ./apr-util-1.6.0/* ./httpd-2.4.29/srclib/apr-util
#编译安装
cd /opt/httpd-2.4.29
./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi
make && make install
#优化配置文件路径
ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
sed -i '4a # chkconfig: 35 85 21' /etc/init.d/httpd
sed -i '5a # description: Apache is a World Wide Web server' /etc/init.d/httpd
chkconfig --add httpd
clear
echo "==========================================================="
read -p "请输入网站IP地址:" ip
sed -i '52c Listen '${ip}':80' /etc/httpd.conf
sed -i '197c ServerName '${ip}':80' /etc/httpd.conf
sed -i '221c DocumentRoot "/usr/local/httpd/htdocs"' /etc/httpd.conf

install.Nginx.sh脚本

#!/bin/bash
#初始化
yum -y install pcre-devel zlib-devel gcc gcc-c++ make
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
#创建nginx用户
useradd -M -s /sbin/nologin nginx
#解压
tar zxvf /opt/nginx-1.12.2.tar.gz
#编译安装
cd /opt/nginx-1.12.2
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_modulemake && make install
#优化路径
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/echo "[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target" >/lib/systemd/system/nginx.service#配置监听地址和域名
clear
echo "==========================================================="
read -p "请入监听端口:" ip
read -p "请输入监听域名" dname
sed -i 's/listen       80/listen      '$ip':80/' /usr/local/nginx/conf/nginx.conf
sed -i 's/server_name  localhost;/server_name  '$dname';/' /usr/local/nginx/conf/nginx.conf
sed -i 's/nobody/nginx/' /usr/local/nginx/conf/nginx.conf#配置nginx支持php
chmod 754 /lib/systemd/system/nginx.service
sed -i -e '65,71s/#//' -e '69c \\tfastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;' /usr/local/nginx/conf/nginx.conf
sed -i '69a \\t#fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;' /usr/local/nginx/conf/nginx.conf#重启服务
systemctl start nginx.service
systemctl enable nginx.service
#验证php测试页
echo "<?php
phpinfo();
?>" >/usr/local/nginx/html/index.php

install.mysql.sh脚本

#/bin/bash
#初始化
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
yum -y install ncurses ncurses-devel bison cmake
#解压安装mysql
tar zxvf /opt/mysql-5.7.17.tar.gz -C /opt
tar zxvf /opt/boost_1_59_0.tar.gz -C /usr/local/
mv /usr/local/boost_1_59_0 /usr/local/boost
cd /opt/mysql-5.7.17
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
cd /opt/mysql-5.7.17
make -j3
make install
#创建用户并配置权限
useradd -M -s /sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql/
#修改mysql 配置文件
echo '[client]
port = 3306
socket=/usr/local/mysql/mysql.sock[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES' > /etc/my.cnf#更改mysql安装目录和配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf#设置路径环境变量echo "export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib" >>/etc/profilesource /etc/profile#初始化数据库
cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data#添加mysqld系统服务
cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqldyum -y install expect/usr/bin/expect <<-EOF
spawn mysqladmin -u root -p password 123456
expect "Enter password:"
send "\r"
expect eof
EOF
cd

install.php.sh脚本

#/bin/bash
#初始化
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
yum -y install ncurses ncurses-devel bison cmake
#解压安装mysql
tar zxvf /opt/mysql-5.7.17.tar.gz -C /opt
tar zxvf /opt/boost_1_59_0.tar.gz -C /usr/local/
mv /usr/local/boost_1_59_0 /usr/local/boost
cd /opt/mysql-5.7.17
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DSYSTEMD_PID_DIR=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8  \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DWITH_BOOST=/usr/local/boost \
-DWITH_SYSTEMD=1
cd /opt/mysql-5.7.17
make -j3
make install
#创建用户并配置权限
useradd -M -s /sbin/nologin mysql
chown -R mysql:mysql /usr/local/mysql/
#修改mysql 配置文件
echo '[client]
port = 3306
socket=/usr/local/mysql/mysql.sock[mysqld]
user = mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port = 3306
character-set-server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket=/usr/local/mysql/mysql.sock
bind-address = 0.0.0.0
skip-name-resolve
max_connections=2048
default-storage-engine=INNODB
max_allowed_packet=16M
server-id = 1sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES' > /etc/my.cnf#更改mysql安装目录和配置文件的属主属组
chown -R mysql:mysql /usr/local/mysql/
chown mysql:mysql /etc/my.cnf#设置路径环境变量echo "export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib" >>/etc/profilesource /etc/profile#初始化数据库
cd /usr/local/mysql/bin/
./mysqld \
--initialize-insecure \
--user=mysql \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data#添加mysqld系统服务
cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ systemctl daemon-reload
systemctl start mysqld.service
systemctl enable mysqldyum -y install expect/usr/bin/expect <<-EOF
spawn mysqladmin -u root -p password 123456
expect "Enter password:"
send "\r"
expect eof
EOF
cd

install.discuz.sh脚本

#!/bin/bash
#解压文件并复制到指定路径
unzip Discuz_X3.4_SC_UTF8.zip -d /opt/discuz
cp -r /opt/discuz/dir_SC_UTF8/upload/ /usr/local/nginx/html/bbs/#创建数据库用户
yum -y install expect
/usr/bin/expect <<-EOF
spawn mysql -u root -p123456
expect "mysql>"
send "\r"
expect "mysql>"
send "CREATE DATABASE bbs;\r"
expect "mysql>"
send "GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';\r"
expect "mysql>"
send "flush privileges;\r"
expect "mysql>"
send "quit\r"
EOF#调整论坛目录的权限
bbs="/usr/local/nginx/html/bbs/"
chmod 777 ${bbs}config/
chmod 777 ${bbs}data/
chmod 777 ${bbs}uc_client/
chmod 777 ${bbs}uc_server/
chown -R nginx ${bbs}/config/
chown -R nginx ${bbs}/data/
chown -R nginx ${bbs}/uc_client/
chown -R nginx ${bbs}/uc_server/

三、等待安装结束即可浏览器访问验证

调用install.tool.sh脚本选择需要安装的架构。

此时可访问:192.168.10.10/index.php
此时可进入浏览器安装论坛:http://192.168.10.10/bbs/install/index.php
数据库服务器:localhost
数据库名字:bbs
数据库用户名:bbsuser
数据库密码:admin123
管理员账号:admin
管理员密码:admin123
论坛内部页面:http://192.168.10.10/bbs/index.php
论坛后台管理员页面:http://192.168.10.10/bbs/admin.php

验证php是否配置成功

192.168.10.10/index.php

安装并登陆论坛

此时可进入浏览器安装论坛:http://192.168.10.10/bbs/install/index.php
数据库服务器:localhost
数据库名字:bbs
数据库用户名:bbsuser
数据库密码:admin123
管理员账号:admin
管理员密码:admin123
论坛内部页面:http://192.168.10.10/bbs/index.php
论坛后台管理员页面:http://192.168.10.10/bbs/admin.php


一键部署LAMP和LNMP架构相关推荐

  1. LAMP源码编译安装及一键部署LAMP架构

    文章目录 一.什么是LAMP? 1.LAMP平台概述 2.构建LAMP平台顺序 3.编译安装的优点 4.各组件的主要作用 二.LAMP架构流向 三.编译安装Apache服务 1.先关闭防火墙 2.将软 ...

  2. LAMP和LNMP架构(介绍)

    目录 工作原理 架构介绍 LAMP架构介绍 LNMP架构介绍 LAMP LNMP差别 工作原理 LAMP 浏览器向服务器发送http请求,服务器 (Apache) 接受请求,由于php作为Apache ...

  3. shell脚本:一键安装LAMP、LNMP脚本

    历时三天边写边测试,终于完成目前最长代码的脚本,总共253行,在2台机器安装LAMP,LNMP都顺利通过,脚本可做为生产环境使用. 脚本需要注意的地方: 1:脚本适用于centos系统6.5以上,干净 ...

  4. linux lamp架构部署,Centos7部署LAMP平台之架构之路

    部署lamp平台搭建 一.源码安装lamp 1.安装apache [root@localhost ~]# yum -y install gcc* apr-devel apr-util-devel pc ...

  5. 宝塔linux面板,一键安装LAMP/LNMP/SSL/Tomcat

    免费版 专业版 企业版 近200个免费应用 网站管理 系统安全 系统监控 计划任务 文件管理 软件管理 一键部署 .... 专业版包含以下插件 宝塔系统加固 网站防篡改程序 网站监控报表 Apache ...

  6. ansible部署LAMP架构

    简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量 ...

  7. 宝塔安装php成功无显示,宝塔面板安装 LAMP 或 LNMP 后没有成功的原因

    现在云主机越来越流行普及了,但在主机服务器上安装可视化管理还是大多人的需求,毕竟操作都直接简单:而宝塔面板作为不错的主机管理面板是现在很多朋友的首选. 大家在选择主机服务器安装宝塔面板后一般都会一键安 ...

  8. 阿里云ECS主机部署LAMP环境

    阿里云ECS主机一键部署LAMP环境 1.LAMP概念 LAMP是Linux+Apache+MySQL+Perl/PHP/Python等组成常用来搭建动态网站或者服务器的开源软件,它们本身都是独立的程 ...

  9. LNMP介绍及一键部署LNMP架构

    目录 一.LNMP 1.LNMP介绍 ①LNMP工作原理 ②LAMP工作原理 2.LAMP和LNMP的区别 3.编译安装的优点 4.各组件的主要作用 二.脚本一键部署LNMP架构 一.LNMP 1.L ...

最新文章

  1. Ubuntu下安装Apache+PHP+Mysql
  2. python图片-利用python进行识别相似图片(一)
  3. php 与时间有关的函数,php中与时间相关的常用函数有哪些
  4. 文献记录(part94)--Clustering and outlier detection using isoperimetric number of trees
  5. 网络编程(part6)--OSI七层模型及四层模型(TCP/IP)
  6. linux命令无视错误,llinux 的一些命令和错误
  7. sql中 N’ 的作用
  8. ASP.NET典型三层架构企业级医药行业ERP系统实战(8大模块22个子系统)
  9. 谷歌中文为什么以红色高亮关键字
  10. Python XML读写(xml.etree.ElementTree模块)(转载)
  11. 解读Depth Map Prediction from a Single Image using a Multi-Scale Deep Network (6)
  12. transform-style: preserve-3d「In CSS」
  13. JAVA栅栏密码解密程序
  14. HTML5开发实战之网易微博
  15. GIMP为证件照更换背景颜色
  16. Linux第7章Gdk及Cairo基础,Linux第7章Gdk及Cairo基础.ppt
  17. go-ipfs-api
  18. Lenb函数计算中文字节出错处理办法
  19. 开源!!!100 多个常用 API 数据接口免费分享!建议收藏!
  20. 机器视觉工程师的几种类型

热门文章

  1. mysql数据存储格式
  2. 《多媒体技术及应用Ⅰ》在线平时作业1
  3. U盘做PE装系统详细
  4. 用U盘做启动盘安装ubuntu系统
  5. 数据中台如何实现数据共享?用这个工具即可
  6. ltspice xvii(pcb电路图仿真软件) 31.05.2017
  7. 图像显示的 flickering
  8. mysql大于、等于、小于语法大全
  9. 编程猫IDE体验:对Scratch的改进
  10. 怎么选择笔记本电脑的配置