75 lines
2.1 KiB
Bash
Executable File
75 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Lista plików do przeszukania
|
|
files=(
|
|
"/usr/local/php72/lib/php.ini"
|
|
"/usr/local/php73/lib/php.ini"
|
|
"/usr/local/php74/lib/php.ini"
|
|
"/usr/local/php80/lib/php.ini"
|
|
"/usr/local/php81/lib/php.ini"
|
|
"/usr/local/php82/lib/php.ini"
|
|
)
|
|
|
|
# Lista domyślnych zmiennych do zmiany
|
|
default_variables=(
|
|
"opcache.jit_buffer_size=256M"
|
|
"opcache.enable=1"
|
|
"opcache.enable_cli=1"
|
|
"memory_limit=512M"
|
|
"max_input_vars=10000"
|
|
"max_execution_time=90"
|
|
)
|
|
|
|
# Jeżeli plik /usr/local/directadmin/ht_php_settings istnieje,
|
|
# wczytaj zmienne z tego pliku
|
|
if [ -f "/usr/local/directadmin/ht_php_settings" ]; then
|
|
variables=()
|
|
while IFS= read -r line; do
|
|
variables+=("$line")
|
|
done < "/usr/local/directadmin/ht_php_settings"
|
|
else
|
|
variables=("${default_variables[@]}")
|
|
fi
|
|
|
|
# Przeszukaj każdy plik
|
|
for file in "${files[@]}"; do
|
|
if [ -f "$file" ]; then
|
|
echo "Plik $file istnieje."
|
|
changed=false # Czy zmieniono jakąś wartość
|
|
|
|
# Przeszukaj każdą zmienną
|
|
for variable in "${variables[@]}"; do
|
|
key="${variable%%=*}" # Wyodrębnij klucz z pary klucz=wartość
|
|
value="${variable#*=}" # Wyodrębnij wartość z pary klucz=wartość
|
|
|
|
# Czy istnieje linia z kluczem?
|
|
if grep -q "$key" "$file"; then
|
|
echo "Znaleziono '$key' w $file. Zmieniam wartość..."
|
|
|
|
# Usunięcie ewentualnego komentarza i zmiana wartości na nową wartość
|
|
sed -i -r "s/^[;#]?($key).*/\1=$value/" "$file"
|
|
|
|
echo "Wartość '$key' zmieniona na '$value' w $file."
|
|
changed=true
|
|
else
|
|
echo "'$key' nie znaleziono w $file. Dodaję wartość..."
|
|
|
|
# Dodajemy wartość na końcu pliku
|
|
echo "$key=$value" >> "$file"
|
|
|
|
echo "Dodano '$key' z wartością '$value' do $file."
|
|
changed=true
|
|
fi
|
|
done
|
|
|
|
# Restart usługi jeśli dokonano jakiejkolwiek zmiany
|
|
if [ "$changed" = true ]; then
|
|
version="${file:14:2}" # Wyciągnięcie wersji z nazwy pliku
|
|
echo "Restartowanie usługi php-fpm$version ze względu na zmiany..."
|
|
systemctl restart "php-fpm$version"
|
|
fi
|
|
else
|
|
echo "Plik $file nie istnieje."
|
|
fi
|
|
done
|