如何使用LAMP+WordPress的一键安装脚本
本篇文章给大家带来的内容是关于如何使用LAMP+WordPress的一键安装脚本,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
#!/bin/bash # Description: This is a one-click script to compile the installation LAMP (PHP in FastCGI working mode) # Environment: centos7.5, apr-1.6.3.tar.gz, apr-util-1.6.1.tar.gz, httpd-2.4.34.tar.bz2, php-7.1.18.tar.bz2, mariadb-10.2.16-linux-x86_64.tar.gz, wordpress-4.9.4-zh_CN .tar.gz # Download the above packages and place them in the /app/ # Ensure that yum warehouses are set up, including local CDS and epel # All the services after compilation and installation are placed in /app/lamp/ echo -e '\033[1;5;31mBEGIN \033[0m' mkdir -p /app/lamp # Install the required development kit groups echo -e '\033[1;31mInstall the group tools \033[0m' yum groupinstall -y 'development tools' echo -e '\033[1;31mFinish Installing the group tools \033[0m' # Create the function to compile and install HTTPD httpd () { # Unzip and move folders cd /app tar xf apr-1.6.3.tar.gz tar xf apr-util-1.6.1.tar.gz tar xf httpd-2.4.34.tar.bz2 mv apr-1.6.3 httpd-2.4.34/srclib/apr mv apr-util-1.6.1 httpd-2.4.34/srclib/apr-util # Create the user and install the packages required for compilation useradd -r -s /sbin/nologin apache yum install -y pcre-devel openssl-devel expat-devel # Start compiling and installing cd httpd-2.4.34/ ./configure --prefix=/app/lamp/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --enable-modules=most --enable-mpms-share d=all --with-mpm=prefork --with-included-apr make && make install # Modify configuration file cd /app/lamp/httpd24/conf sed -i '/^User/s/daemon/apache/' httpd.conf sed -i '/^Group/s/daemon/apache/' httpd.conf sed -i 's@^#Load.∗proxy.soLoad.∗proxy.so$@\1@' httpd.conf sed -i 's@^#Load.∗fcgi.soLoad.∗fcgi.so$@\1@' httpd.conf sed -i 's@[]\+D.∗[]\+D.∗@\1index.php @' httpd.conf echo "Include conf/extra/httpd-php.conf" >> httpd.conf cd extra/ cat > httpd-php.conf <<-EOF AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps ProxyRequests Off ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/lamp/httpd24/htdocs/$1 EOF cd } # Create the function to install mysql with binary package mariadb () { # Create the user useradd -r -s /sbin/nologin mysql # Unzip the file and create a soft connection and modify permissions cd /app tar xf mariadb-10.2.16-linux-x86_64.tar.gz -C /usr/local/ cd /usr/local/ ln -s mariadb-10.2.16-linux-x86_64/ mysql chown -R mysql.mysql mysql/ # Initialize the database and revise the configuration file mkdir /app/lamp/mysql chown -R mysql.mysql /app/lamp/mysql cd /usr/local/mysql/ scripts/mysql_install_db --datadir=/app/lamp/mysql --user=mysql mkdir /etc/mysql/ cp support-files/my-huge.cnf /etc/mysql/my.cnf sed -i '/^\[mysqld]/adatadir=/app/lamp/mysql' /etc/mysql/my.cnf # Preparation for startup script cp support-files/mysql.server /etc/init.d/mysqld cd } # Create the function to compile and install PHP php () { # Install the packages required for compilation yum install -y libxml2-devel bzip2-devel libmcrypt-devel # Unzip and start compiling and installing cd /app tar xf php-7.1.18.tar.bz2 &> /dev/null cd php-7.1.18/ ./configure --prefix=/app/lamp/php --enable-mysqlnd --with-mysqli=mysqlnd --with-openssl --with-pdo-mysql=mysqlnd --enable-mbstring --with-freetype-dir --with- jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php .d --enable-maintainer-zts --disable-fileinfo make && make install # Modify some necessary files cp php.ini-production /etc/php.ini cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm chmod +x /etc/init.d/php-fpm cd /app/lamp/php/etc cp php-fpm.conf.default php-fpm.conf cp php-fpm.d/www.conf.default php-fpm.d/www.conf cd } Main () { echo -e '\033[1;31mStart installing httpd \033[0m' httpd echo -e '\033[1;31mHTTPD is finished \033[0m' echo -e '\033[1;31mStart installing MariaDB \033[0m' mariadb echo -e '\033[1;31mMariaDB is finished \033[0m' echo -e '\033[1;31mStart installing PHP \033[0m' php echo -e '\033[1;31mPHP is finished \033[0m' } Main # Add the binary to the path variable echo 'PATH=/app/lamp/php/bin:/app/lamp/httpd24/bin:/usr/local/mysql/bin:$PATH' > /etc/profile.d/lamp.sh source /etc/profile.d/lamp.sh # Start the service apachectl service mysqld start service php-fpm start echo -e '\033[1;31mAll services are running \033[0m' # Building a blog site echo -e '\033[1;31mStart building the blog site \033[0m' mysql -e "create database wpdb;grant all on wpdb.* to wpuser@'localhost' identified by 'centos'" cd /app tar xf wordpress-4.9.4-zh_CN.tar.gz cp -r wordpress/* /app/lamp/httpd24/htdocs/ cd /app/lamp/httpd24/htdocs/ mv wp-config-sample.php wp-config.php sed -i '/DB_NAME/s/database_name_here/wpdb/' wp-config.php sed -i '/DB_USER/s/username_here/wpuser/' wp-config.php sed -i '/DB_PASSWORD/s/password_here/centos/' wp-config.php echo -e '\033[1;31mBlog is set up \033[0m' echo -e '\033[1;5;31mEND \033[0m' # END
以上是如何使用LAMP+WordPress的一键安装脚本的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

CentOS 和 Ubuntu 的关键差异在于:起源(CentOS 源自 Red Hat,面向企业;Ubuntu 源自 Debian,面向个人)、包管理(CentOS 使用 yum,注重稳定;Ubuntu 使用 apt,更新频率高)、支持周期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社区支持(CentOS 侧重稳定,Ubuntu 提供广泛教程和文档)、用途(CentOS 偏向服务器,Ubuntu 适用于服务器和桌面),其他差异包括安装精简度(CentOS 精

CentOS 安装步骤:下载 ISO 映像并刻录可引导媒体;启动并选择安装源;选择语言和键盘布局;配置网络;分区硬盘;设置系统时钟;创建 root 用户;选择软件包;开始安装;安装完成后重启并从硬盘启动。

CentOS将于2024年停止维护,原因是其上游发行版RHEL 8已停止维护。该停更将影响CentOS 8系统,使其无法继续接收更新。用户应规划迁移,建议选项包括CentOS Stream、AlmaLinux和Rocky Linux,以保持系统安全和稳定。

Docker利用Linux内核特性,提供高效、隔离的应用运行环境。其工作原理如下:1. 镜像作为只读模板,包含运行应用所需的一切;2. 联合文件系统(UnionFS)层叠多个文件系统,只存储差异部分,节省空间并加快速度;3. 守护进程管理镜像和容器,客户端用于交互;4. Namespaces和cgroups实现容器隔离和资源限制;5. 多种网络模式支持容器互联。理解这些核心概念,才能更好地利用Docker。

CentOS 已停止维护,替代选择包括:1. Rocky Linux(兼容性最佳);2. AlmaLinux(与 CentOS 兼容);3. Ubuntu Server(需要配置);4. Red Hat Enterprise Linux(商业版,付费许可);5. Oracle Linux(与 CentOS 和 RHEL 兼容)。在迁移时,考虑因素有:兼容性、可用性、支持、成本和社区支持。

CentOS 停止维护后,用户可以采取以下措施应对:选择兼容发行版:如 AlmaLinux、Rocky Linux、CentOS Stream。迁移到商业发行版:如 Red Hat Enterprise Linux、Oracle Linux。升级到 CentOS 9 Stream:滚动发行版,提供最新技术。选择其他 Linux 发行版:如 Ubuntu、Debian。评估容器、虚拟机或云平台等其他选项。

如何使用 Docker Desktop?Docker Desktop 是一款工具,用于在本地机器上运行 Docker 容器。其使用步骤包括:1. 安装 Docker Desktop;2. 启动 Docker Desktop;3. 创建 Docker 镜像(使用 Dockerfile);4. 构建 Docker 镜像(使用 docker build);5. 运行 Docker 容器(使用 docker run)。

CentOS硬盘挂载分为以下步骤:确定硬盘设备名(/dev/sdX);创建挂载点(建议使用/mnt/newdisk);执行mount命令(mount /dev/sdX1 /mnt/newdisk);编辑/etc/fstab文件添加永久挂载配置;卸载设备使用umount命令,确保没有进程使用设备。
