| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- #!/bin/bash
- PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
- export PATH
- php_version='74'
- mysql_version='5.7'
- redis_version='6.2'
- action_type='install'
- root_path=$(cat /var/bt_setupPath.conf)
- setup_path=$root_path/server
- #宝塔是否已安装
- if [ -z "$root_path" ]; then
- echo "请先安装宝塔"
- exit 1
- fi
- #nginx是否已安装
- if [ ! -f "${setup_path}/nginx/sbin/nginx" ]; then
- echo "请先安装nginx并配置网站"
- exit 1
- fi
- #安装php
- php_install=1
- for phpVer in 71 72 73 74; do
- if [ -d "${setup_path}/php/${phpVer}/bin" ]; then
- php_version=${phpVer}
- php_install=0
- fi
- done
- if [ $php_install == 1 ]; then
- . ${setup_path}/panel/install/install_soft.sh 1 $action_type php $php_version
- fi
- case "${php_version}" in
- '71')
- extFile="${setup_path}/php/71/lib/php/extensions/no-debug-non-zts-20160303"
- ;;
- '72')
- extFile="${setup_path}/php/72/lib/php/extensions/no-debug-non-zts-20170718"
- ;;
- '73')
- extFile="${setup_path}/php/73/lib/php/extensions/no-debug-non-zts-20180731"
- ;;
- '74')
- extFile="${setup_path}/php/74/lib/php/extensions/no-debug-non-zts-20190902"
- ;;
- esac
- #安装mysql
- if [ ! -d "${setup_path}/mysql" ]; then
- . ${setup_path}/panel/install/install_soft.sh 1 $action_type mysql $mysql_version
- fi
- #安装redis
- if [ ! -d "${setup_path}/redis" ]; then
- . ${setup_path}/panel/install/install_soft.sh 0 $action_type redis $redis_version
- fi
- #安装php-redis 插件
- if [ ! -e "${extFile}/redis.so" ]; then
- . ${setup_path}/panel/install/install_soft.sh 1 $action_type redis $php_version
- fi
- #安装php-swoole 插件
- if [ ! -e "${extFile}/swoole.so" ]; then
- . ${setup_path}/panel/install/install_soft.sh 1 $action_type swoole4 $php_version
- fi
- #pcntl_signal pcntl_signal_dispatch pcntl_fork pcntl_wait pcntl_alarm 禁用函数删除
- sed -i 's/,proc_open//' ${setup_path}/php/$php_version/etc/php.ini
- #安装php-fileinfo 插件
- if [ ! -e "${extFile}/fileinfo.so" ]; then
- . ${setup_path}/panel/install/install_soft.sh 1 $action_type fileinfo $php_version
- fi
- #修改nginx配置
- project_path=$(cd `dirname $0`; pwd)
- project_name="${project_path##*/}"
- if [ -e "${setup_path}/panel/vhost/nginx/${project_name}.conf" ]; then
- echo -e "
- server
- {
- listen 80;
- server_name ${project_name};
- index index.php index.html index.htm default.php default.htm default.html;
- root /www/wwwroot/${project_name}/public;
- #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
- #error_page 404/404.html;
- #SSL-END
- #ERROR-PAGE-START 错误页配置,可以注释、删除或修改
- #error_page 404 /404.html;
- #error_page 502 /502.html;
- #ERROR-PAGE-END
- #PHP-INFO-START PHP引用配置,可以注释或修改
- #清理缓存规则
- location ~ /purge(/.*) {
- proxy_cache_purge cache_one \$host\$1\$is_args\$args;
- }
- #引用反向代理规则,注释后配置的反向代理将无效
- location /notice {
- proxy_pass http://127.0.0.1:20002/;
- proxy_http_version 1.1;
- proxy_set_header Upgrade \$http_upgrade;
- proxy_set_header Connection "upgrade";
- proxy_set_header X-real-ip \$remote_addr;
- proxy_set_header X-Forwarded-For \$remote_addr;
- }
- #提示:v4.3.0 以前版本,可不用配置一下代码
- location /msg {
- proxy_pass http://127.0.0.1:20003/;
- proxy_http_version 1.1;
- proxy_set_header Upgrade \$http_upgrade;
- proxy_set_header Connection "upgrade";
- proxy_set_header X-real-ip \$remote_addr;
- proxy_set_header X-Forwarded-For \$remote_addr;
- }
- include enable-php-00.conf;
- #PHP-INFO-END
- #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
- include ${setup_path}/panel/vhost/rewrite/${project_name}.conf;
- #REWRITE-END
- #禁止访问的文件或目录
- location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
- {
- return 404;
- }
- #一键申请SSL证书验证目录相关设置
- location ~ \.well-known{
- allow all;
- }
- access_log /www/wwwlogs/${project_name}.log;
- error_log /www/wwwlogs/${project_name}.error.log;
- }
- " > ${setup_path}/panel/vhost/nginx/${project_name}.conf
- fi
- echo ''
- # 操作说明,进入程序根目录运行 /bin/bash baota.sh
|