Фикс
This commit is contained in:
101
install.sh
101
install.sh
@@ -390,8 +390,8 @@ proceed_with_installation() {
|
||||
if [ "$DISTRO_FAMILY" = "debian" ]; then
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
PHP_PACKAGES="php8.3 php8.3-cli php8.3-common php8.3-mysql php8.3-curl php8.3-gd \
|
||||
php8.3-mbstring php8.3-xml php8.3-zip php8.3-opcache php8.3-intl \
|
||||
php8.3-bcmath libapache2-mod-php8.3"
|
||||
php8.3-mbstring php8.3-xml php8.3-zip php8.3-opcache php8.3-intl \
|
||||
php8.3-bcmath libapache2-mod-php8.3"
|
||||
|
||||
if ! apt install -y $PHP_PACKAGES >/dev/null 2>&1; then
|
||||
log_error "Не удалось установить PHP 8.3 и/или его расширения."
|
||||
@@ -400,13 +400,15 @@ proceed_with_installation() {
|
||||
|
||||
elif [ "$DISTRO_FAMILY" = "rhel" ]; then
|
||||
if [ "$DISTRO" = "fedora" ]; then
|
||||
# Для Fedora используем PHP-FPM
|
||||
PHP_PACKAGES="php php-cli php-common php-mysqlnd php-curl php-gd \
|
||||
php-mbstring php-xml php-zip php-opcache php-intl \
|
||||
php-bcmath"
|
||||
php-mbstring php-xml php-zip php-opcache php-intl \
|
||||
php-bcmath php-fpm"
|
||||
else
|
||||
PHP_PACKAGES="php83 php83-php php83-php-cli php83-php-common php83-php-mysqlnd php83-php-curl php83-php-gd \
|
||||
php83-php-mbstring php83-php-xml php83-php-zip php83-php-opcache php83-php-intl \
|
||||
php83-php-bcmath"
|
||||
# Для Rocky Linux/CentOS используем PHP-FPM из Remi
|
||||
PHP_PACKAGES="php83-php php83-php-cli php83-php-common php83-php-mysqlnd php83-php-curl php83-php-gd \
|
||||
php83-php-mbstring php83-php-xml php83-php-zip php83-php-opcache php83-php-intl \
|
||||
php83-php-bcmath php83-php-fpm"
|
||||
fi
|
||||
|
||||
if ! $PKG_MANAGER install -y $PHP_PACKAGES >/dev/null 2>&1; then
|
||||
@@ -414,8 +416,10 @@ proceed_with_installation() {
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Создаем символические ссылки для PHP83 если нужно
|
||||
if command -v php83 >/dev/null 2>&1 && [ ! -f /usr/bin/php ]; then
|
||||
ln -sf /usr/bin/php83 /usr/bin/php >/dev/null 2>&1 || true
|
||||
ln -sf /opt/remi/php83/root/usr/bin/php /usr/bin/php >/dev/null 2>&1 || true
|
||||
ln -sf /opt/remi/php83/root/usr/bin/php-fpm /usr/bin/php-fpm >/dev/null 2>&1 || true
|
||||
fi
|
||||
fi
|
||||
log_success "PHP 8.3 и расширения установлены"
|
||||
@@ -434,25 +438,34 @@ proceed_with_installation() {
|
||||
|
||||
elif [ "$DISTRO_FAMILY" = "rhel" ]; then
|
||||
WEBROOT="/var/www/html"
|
||||
APACHE_CONF="/etc/httpd/conf.d/altcor.conf" # Изменено имя файла
|
||||
APACHE_CONF="/etc/httpd/conf.d/altcor.conf"
|
||||
WEBSERVER_USER="apache"
|
||||
|
||||
# Исправленная конфигурация PHP для RHEL
|
||||
if [ "$DISTRO" = "fedora" ]; then
|
||||
# Для Fedora
|
||||
cat > "/etc/httpd/conf.d/php.conf" << 'EOF'
|
||||
# PHP configuration for Apache
|
||||
LoadModule php_module modules/libphp.so
|
||||
# НЕ ЗАГРУЖАЕМ mod_php - используем PHP-FPM!
|
||||
# Удаляем старые конфигурации PHP
|
||||
rm -f /etc/httpd/conf.d/php.conf
|
||||
|
||||
<FilesMatch \.php$>
|
||||
SetHandler application/x-httpd-php
|
||||
</FilesMatch>
|
||||
cat > "/etc/httpd/conf.d/php-fpm.conf" << 'EOF'
|
||||
# PHP-FPM configuration for Apache
|
||||
# НЕ загружаем mod_php - используем PHP-FPM через ProxyPass
|
||||
|
||||
# Enable useful modules
|
||||
# Включаем нужные модули (без mod_php)
|
||||
LoadModule rewrite_module modules/mod_rewrite.so
|
||||
LoadModule headers_module modules/mod_headers.so
|
||||
LoadModule expires_module modules/mod_expires.so
|
||||
LoadModule deflate_module modules/mod_deflate.so
|
||||
LoadModule proxy_module modules/mod_proxy.so
|
||||
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
|
||||
|
||||
# Обработка PHP через PHP-FPM
|
||||
<FilesMatch \.php$>
|
||||
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
|
||||
</FilesMatch>
|
||||
|
||||
# Альтернативный способ через TCP (если Unix socket не работает)
|
||||
# <FilesMatch \.php$>
|
||||
# SetHandler "proxy:fcgi://127.0.0.1:9000"
|
||||
# </FilesMatch>
|
||||
EOF
|
||||
else
|
||||
# Для Rocky Linux/CentOS/RHEL с Remi
|
||||
@@ -494,14 +507,14 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
cat > "/etc/httpd/conf.d/altcor.conf" << 'EOF'
|
||||
cat > "/etc/httpd/conf.d/altcor.conf" << 'EOF'
|
||||
# Altcor main configuration
|
||||
|
||||
# Отключаем ServerTokens и ServerSignature для безопасности
|
||||
ServerTokens Prod
|
||||
ServerSignature Off
|
||||
|
||||
# Основные настройки
|
||||
# Основные настройки директории
|
||||
<Directory "/var/www/html">
|
||||
Options -Indexes +FollowSymLinks
|
||||
AllowOverride All
|
||||
@@ -549,13 +562,49 @@ ServerSignature Off
|
||||
<Files ".env">
|
||||
Require all denied
|
||||
</Files>
|
||||
|
||||
# Обработка PHP файлов
|
||||
<FilesMatch \.php$>
|
||||
SetHandler application/x-httpd-php
|
||||
</FilesMatch>
|
||||
EOF
|
||||
fi
|
||||
|
||||
log_info "Настройка PHP-FPM..."
|
||||
|
||||
# Определяем путь к конфигурации PHP-FPM
|
||||
if [ -f "/etc/opt/remi/php83/php-fpm.d/www.conf" ]; then
|
||||
PHP_FPM_CONF="/etc/opt/remi/php83/php-fpm.d/www.conf"
|
||||
PHP_FPM_SERVICE="php83-php-fpm"
|
||||
elif [ -f "/etc/php-fpm.d/www.conf" ]; then
|
||||
PHP_FPM_CONF="/etc/php-fpm.d/www.conf"
|
||||
PHP_FPM_SERVICE="php-fpm"
|
||||
else
|
||||
log_error "Не найден конфигурационный файл PHP-FPM"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cp "$PHP_FPM_CONF" "${PHP_FPM_CONF}.backup.$(date +%Y%m%d_%H%M%S)"
|
||||
|
||||
# Настройки для работы с Apache
|
||||
sed -i 's/;*listen = .*/listen = \/run\/php-fpm\/www.sock/' "$PHP_FPM_CONF"
|
||||
sed -i 's/;*listen.owner = .*/listen.owner = apache/' "$PHP_FPM_CONF"
|
||||
sed -i 's/;*listen.group = .*/listen.group = apache/' "$PHP_FPM_CONF"
|
||||
sed -i 's/;*listen.mode = .*/listen.mode = 0660/' "$PHP_FPM_CONF"
|
||||
sed -i 's/;*user = .*/user = apache/' "$PHP_FPM_CONF"
|
||||
sed -i 's/;*group = .*/group = apache/' "$PHP_FPM_CONF"
|
||||
|
||||
# Создаем директорию для socket
|
||||
mkdir -p /run/php-fpm
|
||||
chown apache:apache /run/php-fpm
|
||||
|
||||
# Запускаем и включаем PHP-FPM
|
||||
systemctl start $PHP_FPM_SERVICE >/dev/null 2>&1
|
||||
systemctl enable $PHP_FPM_SERVICE >/dev/null 2>&1
|
||||
|
||||
if ! systemctl is-active --quiet $PHP_FPM_SERVICE; then
|
||||
log_error "PHP-FPM не удалось запустить"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
log_success "PHP-FPM настроен и запущен"
|
||||
fi
|
||||
|
||||
log_success "Модули Apache настроены"
|
||||
|
||||
log_step "Создание конфигурации виртуального хоста..."
|
||||
|
||||
Reference in New Issue
Block a user