热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

20201102

1:shell脚本实现二进制安装LAMP架构的wordpressmysql_packagemariadb-10.2.31-linux-x86_64.tar.gzm

1: shell 脚本实现二进制安装 LAMP 架构的 word press

mysql_package=mariadb-10.2.31-linux-x86_64.tar.gz
mysql_dir=/data/mysql
php_dir=/data/php74
uncompress_dir=/usr/local
install_dir=/data/httpd
download_urls=("https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.46.tar.bz2" "https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.bz2" "https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.bz2")
PHP='php-7.4.3.tar.xz'
WORDPRESS='wordpress-5.4.2-zh_CN.tar.gz'
mysql_pass=123456
MYSQL_WORDPRESS_PASSWD=123456
discuz=Discuz_X3.4_SC_UTF8【20191201】.zip#二进制安装mariadb
install_mysql () {yum -y install libaio perl-Data-Dumper autoconf ncurses-compat-libs &> /dev/nullid mysql &> /dev/null || (groupadd -r -g 306 mysql;useradd -r -g 306 -u 306 -d $mysql_dir mysql) mkdir /data/mysql chown -R mysql.mysql $mysql_dirtar xf ${mysql_package} -C $uncompress_dirln -s $uncompress_dir/${mysql_package%.tar.gz} $uncompress_dir/mysqlchown -R root.root $uncompress_dir/mysqlln -sv $uncompress_dir/mysql/bin/* /usr/bincat > /etc/my.cnf << EOF
[mysqld]
server-id&#61;1
log-bin
socket&#61;$mysql_dir/mysql.sock
datadir &#61;$mysql_dir
log-error&#61;$mysql_dir/mysql.log
pid-file&#61;$mysql_dir/mysql.pid
skip_name_resolve &#61; on[client]
socket&#61;/data/mysql/mysql.sockEOF

$uncompress_dir/mysql/scripts/mysql_install_db --user&#61;mysql --datadir&#61;$mysql_dir
cp $uncompress_dir/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
service mysqld start
def_passwd&#61;&#96; awk &#39;/A temporary password /{print $NF }&#39; /data/mysql/mysql.log&#96;
mysqladmin -uroot -p${def_passwd} password $mysql_pass &> /dev/null
}#编译安装httpd
install_httpd () {yum -y install gcc make pcre-devel openssl-devel expat-devel wgetfor i in ${download_urls[*]};dowget $i tar xf ${i##*/} -C ${uncompress_dir}doneid apache || useradd -s /sbin/nologin -r apachecd $uncompress_dirmv &#96;basename -s .tar.bz2 ${download_urls[1]} &#96; &#96;basename -s .tar.bz2 ${download_urls[0]}&#96;/srclib/aprmv &#96;basename -s .tar.bz2 ${download_urls[2]}&#96; &#96;basename -s .tar.bz2 ${download_urls[0]}&#96;/srclib/apr-utilcd $uncompress_dir/&#96;basename -s .tar.bz2 ${download_urls[0]}&#96;/
./configure --prefix&#61;${install_dir} --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-included-apr --enable-modules&#61;most --enable-mpms-shared&#61;all --with-mpm&#61;prefork
make -j 2 && make install sed -i -e &#39;s/^User.*/User apache/&#39; -e &#39; s/^Group.*/Group apache/&#39; -e &#39;s/^#\(ServerName ww.*\)/\1/&#39; ${install_dir}/conf/httpd.conf
ln -s ${install_dir}/bin/* /usr/bin/
cat > /usr/lib/systemd/system/httpd.service << EOF
[Unit]
Description&#61;The apache HTTP Server
After&#61;network.target remote-fs.target nss-lookup.target[Service]
Type&#61;forking
ExecStart&#61;${install_dir}/bin/apachectl start
ExecReload&#61;${install_dir}/bin/apachectl graceful
ExecStop&#61;${install_dir}/bin/apachectl stop
KillSignal&#61;SIGCONT
PrivateTmp&#61;true[Install]
WantedBy&#61;multi-user.target
EOF

#配置httpd支持php-fpm
cat >> $install_dir/conf/httpd.conf << EOF
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
ProxyRequests off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000$install_dir/htdocs/$1
EOF

sed -i "/[^#] DirectoryIndex/c DirectoryIndex index.html index.php " $install_dir/conf/httpd.conf
systemctl daemon-reload
systemctl enable --now httpd.service
} #编译安装fastcgi方式的php7.4
install_php () {cd /rootyum -y install gcc libxml2-devel bzip2-devel libmcrypt-devel sqlite-devel openssl-devel oniguruma-develtar xf $PHP -C $uncompress_dir[ -d /data/www ] || mkdir -pv /data/wwwcd $uncompress_dir/${PHP%.tar.xz}./configure --prefix&#61;$php_dir --enable-mysqlnd --with-mysqli&#61;mysqlnd --with-pdo-mysql&#61;mysqlnd --with-openssl --with-zlib --with-config-file-path&#61;/etc --with-config-file-scan-dir&#61;/etc/php.d --enable-mbstring --enable-xml --enable-sockets --enable-fpm --enable-maintainer-zts --disable-fileinfomake -j 2 && make installmkdir /etc/php.d/cp php.ini-production /etc/php.ini#支持opcache加速cat > /etc/php.d/opcache.ini <<EOF
[opcache]
zend_extension&#61;opcache.so
opcache.enable&#61;1
EOF

cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/
cp $php_dir/etc/php-fpm.conf.default $php_dir/etc/php-fpm.conf
cp $php_dir/etc/php-fpm.d/www.conf.default $php_dir/etc/php-fpm.d/www.conf
id apache &> /dev/null || useradd -s /sbin/nologin -r apache;sed -i.bak -e &#39;s/^user.*/user &#61; apache/&#39; -e &#39;s/^group.*/group &#61; apache/&#39; $php_dir/etc/php-fpm.d/www.conf
systemctl daemon-reload
systemctl start php-fpm
}#安装wordpress
install_wordpress () {cd /roottar -xf $WORDPRESS -C $uncompress_dirmv $uncompress_dir/wordpress $install_dir/htdocs/wpchown -R apache.apache $install_dir/htdocs/wpmv $install_dir/htdocs/wp/wp-config-sample.php $install_dir/htdocs/wp/wp-config.phpmysql -uroot -p"$mysql_pass" -e "create database wordpress;create user wordpress&#64;&#39;127.0.0.1&#39; identified by &#39;$MYSQL_WORDPRESS_PASSWD&#39;; grant all on wordpress.* to wordpress&#64;&#39;127.0.0.1&#39;" &>/dev/nullsed -i.bak -e &#39;s/database_name_here/wordpress/&#39; -e &#39;s/username_here/wordpress/&#39; -e &#39;s/password_here/&#39;&#39;&#39;$MYSQL_WORDPRESS_PASSWD&#39;&#39;&#39;/&#39; -e &#39;s/localhost/127.0.0.1/&#39; $install_dir/htdocs/wp/wp-config.php
cat >> $install_dir/conf/httpd.conf << EOF
customlog "logs/access_wordpress_log" common
EOF

systemctl restart httpd
}#安装discuz
install_discuz () {cd /rootunzip $discuz -d $uncompress_dirmv $uncompress_dir/DiscuzX/upload/ $install_dir/htdocs/forumchown -R apache:apache $install_dir/htdocs/forummysql -uroot -p"$mysql_pass" -e "create database ultrax;create user ultrax&#64;&#39;10.0.0.%&#39; identified by &#39;$MYSQL_WORDPRESS_PASSWD&#39;; grant all on ultrax.* to ultrax&#64;&#39;10.0.0.%&#39;" &>/dev/null
cat >> $install_dir/conf/httpd.conf << EOF
customlog "logs/access_forum_log" common
EOF

systemctl restart httpd
}install_mysql
install_httpd
install_php
install_wordpress
#install_discuz

推荐阅读
  • 影响版本:WordPressCevherShare2.0plugin开发者:http:phpkode.com下载地址:http:phpkode.comdownloadscevher ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • Sleuth+zipkin链路追踪SpringCloud微服务的解决方案
    在庞大的微服务群中,随着业务扩展,微服务个数增多,系统调用链路复杂化。Sleuth+zipkin是解决SpringCloud微服务定位和追踪的方案。通过TraceId将不同服务调用的日志串联起来,实现请求链路跟踪。通过Feign调用和Request传递TraceId,将整个调用链路的服务日志归组合并,提供定位和追踪的功能。 ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • php实现文件下载代码一例,
    php教程|php手册php,实现,文件下载,代码,一例,php,实现,文件下载,代码,一例,我们,需要,用到,header,函数,来,发送,php教程-php手册php实现文件下 ... [详细]
  • mysql5.6 多实例 主从安装_MySQL5.6一主多从的半同步复制实例
    半同步简介:在默认情况下,MySQL的复制是异步的,这意味着主服务器及其从服务器是独立的。异步复制可以提供最佳的性能,因为主服务器在将更新 ... [详细]
  • 【BUUCTF】[极客大挑战 2019]LoveSQL 详细题解总结笔记 Writeup
    【BUUCTF】[极客大挑战2019]LoveSQL一.SQL注入考点二.解题过程0.存在SQL注入1.万能密码adminor112.爆字段3.看回显4.爆数据库5.爆数据库的表6 ... [详细]
  • HyperledgerComposer环境安装1.安装基本软件包**如果使用Linux安装HyperledgerComposer,请注意以下建议:以 ... [详细]
  • pdf在这里:http:mfinocchiaro.files.wordpress.com200807java-virtual-machine-neutral.pdf以及关于gc的 ... [详细]
  • Linux环境中使用Mysql数据库
    Linux下Mysql数据库MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司,目前属于Oracle公司,MySQL被广泛地应用在I ... [详细]
  • 罕见蠕虫瞄准PHP漏洞 Linux安全不在
    php教程|PHP源码Linux,RPC,XML,PHP,PHPGroupWarephp教程-PHP源码ec(2);  据国外媒体报道,Linux和其他开源软件遭到病毒或黑客袭击的 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了CentOS7编译mysql8.0.12相关的知识,希望对你有一定的参考价值。步骤一:安装 ... [详细]
author-avatar
皇家城市_579
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有