Переделано под 2 дистрибутива
This commit is contained in:
80
install.sh
Normal file
80
install.sh
Normal file
@@ -0,0 +1,80 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Запустите скрипт с sudo"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Определение дистрибутива..."
|
||||
if [ -f /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
DISTRO="$ID"
|
||||
FAMILY="$ID_LIKE"
|
||||
else
|
||||
echo "Не удалось определить дистрибутив"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Дистрибутив: $DISTRO"
|
||||
echo "Семейство: $FAMILY"
|
||||
echo "Установка..."
|
||||
|
||||
if echo "$DISTRO $FAMILY" | grep -qi "rhel\|fedora\|centos"; then
|
||||
dnf update -y
|
||||
dnf install -y nginx mariadb-server mariadb php php-fpm php-mysqlnd \
|
||||
php-curl php-gd php-mbstring php-xml php-zip php-opcache \
|
||||
php-intl php-bcmath php-json
|
||||
|
||||
systemctl enable --now nginx mariadb php-fpm
|
||||
|
||||
elif echo "$DISTRO $FAMILY" | grep -qi "debian"; then
|
||||
apt update -y
|
||||
apt install -y nginx mariadb-server php-fpm php-mysql \
|
||||
php-curl php-gd php-mbstring php-xml php-zip php-opcache \
|
||||
php-intl php-bcmath php-json
|
||||
|
||||
systemctl enable --now nginx mariadb php7.4-fpm 2>/dev/null || true
|
||||
else
|
||||
echo "Скрипт не поддерживает этот дистрибутив"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cat > /etc/nginx/conf.d/default.conf << 'EOF'
|
||||
server {
|
||||
listen 80 default_server;
|
||||
listen [::]:80 default_server;
|
||||
root /var/www/html;
|
||||
index index.php index.html;
|
||||
server_name _;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
fastcgi_pass 127.0.0.1:9000;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
}
|
||||
|
||||
location ~ /\.ht {
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
mkdir -p /var/www/html
|
||||
chown -R nginx:nginx /var/www/html 2>/dev/null || chown -R www-data:www-data /var/www/html
|
||||
chmod -R 755 /var/www/html
|
||||
|
||||
sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php/*/php.ini 2>/dev/null || sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php.ini
|
||||
sed -i 's/upload_max_filesize = .*/upload_max_filesize = 64M/' /etc/php/*/php.ini 2>/dev/null || sed -i 's/upload_max_filesize = .*/upload_max_filesize = 64M/' /etc/php.ini
|
||||
sed -i 's/post_max_size = .*/post_max_size = 64M/' /etc/php/*/php.ini 2>/dev/null || sed -i 's/post_max_size = .*/post_max_size = 64M/' /etc/php.ini
|
||||
|
||||
nginx -t
|
||||
systemctl restart nginx
|
||||
systemctl restart php-fpm 2>/dev/null || systemctl restart php*-fpm
|
||||
|
||||
echo "Установка завершена"
|
||||
Reference in New Issue
Block a user