Fehler: Die PHP-Speichergrenze liegt unterhalb des empfohlenen Wertes von 512MB

Also so:

php_flag memory_limit 2G
php_flag upload_max_filesize 16G
php_flag opcache.enable on
php_flag opcache.enable_cli on
php_flag opcache.interned_strings_buffer 8
php_flag opcache.max_accelerated_files 10000
php_flag opcache.memory_consumption 128
php_flag opcache.save_comments on
php_flag opcache.revalidate_freq on

?

Nein :wink:

Schau dir mal den Link oben an. Du hast einmal php_value und einmal php_flag. Value wird genutzt wenn du einen Wert setzen möchtest (also z.B. 1G), Flag wird genommen wenn es sich um ein Boolean handelt, d.h. im Prinzip wenn du etwas “an/aus” machen möchtest.

Aus dem Bauch raus würde ich folgendes sagen

php_value memory_limit 2G
php_value upload_max_filesize 16G
php_flag opcache.enable on
php_flag opcache.enable_cli on
php_value opcache.interned_strings_buffer 8
php_value opcache.max_accelerated_files 10000
php_value opcache.memory_consumption 128
php_flag opcache.save_comments on
php_flag opcache.revalidate_freq on

Das hat reibungslos funktioniert! Vielen Dank. Dann kann ich alles in der htaccess wieder löschen nehme ich mal an!

Hast du noch ein paar Minuten deiner Zeit für eine weitere Frage? Ich habe RocketChat auf dem Server installiert via Snap und daraufhin die URL zugewiesen.

sudo snap set rocketchat-server siteurl=https://chat.DOMAIN.de
sudo systemctl enable --now snap.rocketchat-server.rocketchat-caddy 
sudo snap restart rocketchat-server

Wenn ich nun versuche darauf zuzugreifen komme ich aber auf eine Nextcloud Seite “Zugriff über eine nicht vertrauenswürdige Domain”. Warum bin ich auf einmal bei Nextcloud?

Via chat.domain.de:3000 komme ich auf die RocketChat Seite.

Genau, das sollte eigentlich dann passen.

Bei Rocket.Chat bin ich raus. Ganz grundsätzlich wird deine chat.domain.tld ja auf den NC Server zeigen, dh vom Apache beantwortet werden. Wenn der keine Info über Rocket.Chat bzw. die Subdomain hat, landest du wieder bei Nextcloud und da bei Nextcloud die chat.domain.tld nicht in der Config hinterlegt ist, ist die Adresse nicht vertrauenswürdig.

Alternativ könntest du dir mal Nextcloud Talk anschauen, das kannst du einfach als App installieren. Je nachdem was deine Anforderung sind.

1 Like

Sobald ich es aus der .htaccess entferne bekomme ich wieder:

Die PHP-Speichergrenze liegt unterhalb des empfohlenen Wertes von 512MB

Also scheint er sich die Werte doch nicht von Apache zu ziehen?

Aber die opcache Einstellungen werden übernommen?

Du könntest statt php_value noch mal php_admin_value versuchen, dies Werte können nachträglich nicht per .htaccess überschrieben werden.

Das Abändern auf php_admin_value hat nicht geholfen.

Die Frage nach dem opcache Einstellungen kann ich nicht beantworten, weil die Fehlermeldung dazu nach einem Reboot immer erstmal für eine Weile verschwindet.

Du kannst über die phpinfo prüfen welche Werte genutzt werden.

Hier hat sich nicht viel verändert.

Virtual Directory Support	disabled
Configuration File (php.ini) Path	/etc/php/8.0/apache2
Loaded Configuration File	/etc/php/8.0/apache2/php.ini
Scan this dir for additional .ini files	/etc/php/8.0/apache2/conf.d
Additional .ini files parsed	/etc/php/8.0/apache2/conf.d/10-mysqlnd.ini, /etc/php/8.0/apache2/conf.d/10-opcache.ini, /etc/php/8.0/apache2/conf.d/10-pdo.ini, /etc/php/8.0/apache2/conf.d/15-xml.ini, /etc/php/8.0/apache2/conf.d/20-apcu.ini, /etc/php/8.0/apache2/conf.d/20-bcmath.ini, /etc/php/8.0/apache2/conf.d/20-calendar.ini, /etc/php/8.0/apache2/conf.d/20-ctype.ini, /etc/php/8.0/apache2/conf.d/20-curl.ini, /etc/php/8.0/apache2/conf.d/20-dom.ini, /etc/php/8.0/apache2/conf.d/20-exif.ini, /etc/php/8.0/apache2/conf.d/20-ffi.ini, /etc/php/8.0/apache2/conf.d/20-fileinfo.ini, /etc/php/8.0/apache2/conf.d/20-ftp.ini, /etc/php/8.0/apache2/conf.d/20-gd.ini, /etc/php/8.0/apache2/conf.d/20-gettext.ini, /etc/php/8.0/apache2/conf.d/20-gmp.ini, /etc/php/8.0/apache2/conf.d/20-iconv.ini, /etc/php/8.0/apache2/conf.d/20-igbinary.ini, /etc/php/8.0/apache2/conf.d/20-imagick.ini, /etc/php/8.0/apache2/conf.d/20-intl.ini, /etc/php/8.0/apache2/conf.d/20-mbstring.ini, /etc/php/8.0/apache2/conf.d/20-mysqli.ini, /etc/php/8.0/apache2/conf.d/20-pdo_mysql.ini, /etc/php/8.0/apache2/conf.d/20-phar.ini, /etc/php/8.0/apache2/conf.d/20-posix.ini, /etc/php/8.0/apache2/conf.d/20-readline.ini, /etc/php/8.0/apache2/conf.d/20-redis.ini, /etc/php/8.0/apache2/conf.d/20-shmop.ini, /etc/php/8.0/apache2/conf.d/20-simplexml.ini, /etc/php/8.0/apache2/conf.d/20-sockets.ini, /etc/php/8.0/apache2/conf.d/20-sysvmsg.ini, /etc/php/8.0/apache2/conf.d/20-sysvsem.ini, /etc/php/8.0/apache2/conf.d/20-sysvshm.ini, /etc/php/8.0/apache2/conf.d/20-tokenizer.ini, /etc/php/8.0/apache2/conf.d/20-xmlreader.ini, /etc/php/8.0/apache2/conf.d/20-xmlwriter.ini, /etc/php/8.0/apache2/conf.d/20-xsl.ini, /etc/php/8.0/apache2/conf.d/20-zip.ini

Ich meinte die Opcache Werte :slight_smile:

Die Werte dort sind nicht die, die ich eingestellt habe. Also zieht er sich jene auch nicht aus der VHost Datei

Kannst du deine VHost config noch mal posten?

Aber ansonsten fehlen mir langsam die Ideen :sweat_smile:

Aber gerne doch:

<VirtualHost *:80>
     ServerAdmin name@domain.com
     DocumentRoot /var/www/nextcloud/
     ServerName nextcloud.domain.de
     ServerAlias www.nextcloud.domain.de
ServerAlias www.nextcloud.domain.de

     Alias /nextcloud "/var/www/nextcloud/"
     <Directory /var/www/nextcloud/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
          <IfModule mod_dav.c>
            Dav off
          </IfModule>
        SetEnv HOME /var/www/nextcloud
        SetEnv HTTP_HOME /var/www/nextcloud
    <IfModule mod_headers.c>
      Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
    </IfModule>
     </Directory>
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.nextcloud.domain.de [OR]
RewriteCond %{SERVER_NAME} =www.nextcloud.domain.de [OR]
RewriteCond %{SERVER_NAME} =nextcloud.domain.de
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
php_admin_value memory_limit 2G
php_value upload_max_filesize 16G
php_flag opcache.enable on
php_flag opcache.enable_cli on
php_value opcache.interned_strings_buffer 8
php_value opcache.max_accelerated_files 10000
php_value opcache.memory_consumption 128
php_flag opcache.save_comments on
php_flag opcache.revalidate_freq on
</VirtualHost>

Ich war vielleicht in der falschen Config - mittlerweile ist memory_limit wieder richtig aber alles zum OPcache scheint er sich leider nicht zu ziehen:

  • Der OPcache-Zwischenspeicher für interne Zeichenfolgen ist fast voll. Um sicherzustellen, dass sich wiederholende Zeichenfolgen effektiv zwischengespeichert werden können, wird empfohlen, opcache.interned_strings_buffer mit einem Wert größer als 8 auf Ihre PHP-Konfiguration anzuwenden.