# Apache HTTP Server 2.4 liefert 500 für alle Dateien — auch statisches HTML
**Gerät:** Synology DS224+
**DSM Version:** 7.3.2
**Paket:** Apache HTTP Server 2.4 + Web Station
**PHP:** 8.2 (PHP-FPM)
---
## Problem
Nach einer Neuinstallation eines Webdienstes in der Web Station liefert Apache **für jede Datei HTTP 500** — auch für statisches HTML. PHP wird gar nicht erst ausgeführt.
## Was ich gemacht habe
1. Webdienst erstellt:
- Typ: „Website für native Skript-Sprachen"
- PHP 8.2, Default Profile
- Dokument-Root: `web/wert`
- HTTP-Backend: Apache HTTP Server 2.4
2. Webportal erstellt:
- Portbasiert, HTTP: 8080, HTTPS: 8443
3. Testdatei erstellt:
```bash
echo "<h1>Test</h1>" > /volume1/web/wert/test.html
```
4. Aufruf `http://xxxxnamexxxx.synology.me:8080/test.html` → **500 Internal Server Error**
## Was ich bereits geprüft habe
**Apache läuft:**
```
root 28123 /var/packages/Apache2.4/target/usr/local/bin/httpd24
http 32624 /var/packages/Apache2.4/target/usr/local/bin/httpd24
```
**Apache Konfiguration ist OK:**
```bash
sudo /var/packages/Apache2.4/target/usr/local/bin/httpd24 -t
# Syntax OK
```
**PHP-FPM Socket existiert:**
```
srw-rw---- 1 http http 0 /run/php-fpm/php-95f7fe6c-5dbc-4f31-9c63-99ef91a6df1e.sock
```
**PHP funktioniert als CLI:**
```bash
sudo -u http php /volume1/web/wert/test.php
# PHP läuft: 8.1.32
```
**Dateiberechtigungen:**
```bash
sudo -u http cat /volume1/web/wert/test.html
# Inhalt wird korrekt ausgegeben
```
**Apache Error Log ist leer:**
```
-rw-r--r-- 1 root root 0 /var/packages/WebStation/var/log/apache24_error_log
```
**Virtual Host Konfiguration:**
```apache
NameVirtualHost *:8080
NameVirtualHost *:8443
<VirtualHost *:8080 *:8443>
DocumentRoot "/volume1/web/wert"
LogLevel info
ErrorLog "/var/packages/WebStation/var/log/apache24_error_log"
<Proxy "unix:/run/php-fpm/php-95f7fe6c-5dbc-4f31-9c63-99ef91a6df1e.sock|fcgi://...">
ProxySet timeout=60
</Proxy>
<Directory "/volume1/web/wert">
AllowOverride All
Require all granted
DirectoryIndex index.php index.htm index.html
<FilesMatch "\.(php[345]?|phtml)$">
SetHandler "proxy:fcgi://..."
</FilesMatch>
</Directory>
</VirtualHost>
```
**.htaccess** enthält keine `php_flag` oder `php_value` Direktiven (wurden entfernt).
**Dateiberechtigungen** wurden per File Station für den `http` User gesetzt (Lesen + Schreiben auf alle Unterordner und Dateien).
## Fragen
1. Warum liefert Apache 500 obwohl die Konfiguration syntaktisch korrekt ist?
2. Warum ist der Apache Error Log leer obwohl Fehler auftreten?
3. Gibt es einen anderen Log-Pfad wo Apache seine Fehler schreibt?
4. Könnte das PHP-FPM Socket das Problem sein?
## Zusatzinfo
- Vor einigen Wochen lief dieselbe Konfiguration einwandfrei
- Ausgelöst wurde das Problem nach dem Hochladen neuer PHP-Dateien
- phpMyAdmin (läuft auf demselben Apache) funktioniert ebenfalls nicht mehr über Port 8443
- Ein Docker-Container (xxxSafe auf Port 8083) läuft auf derselben NAS problemlos
Für jeden Hinweis bin ich dankbar!
**Gerät:** Synology DS224+
**DSM Version:** 7.3.2
**Paket:** Apache HTTP Server 2.4 + Web Station
**PHP:** 8.2 (PHP-FPM)
---
## Problem
Nach einer Neuinstallation eines Webdienstes in der Web Station liefert Apache **für jede Datei HTTP 500** — auch für statisches HTML. PHP wird gar nicht erst ausgeführt.
## Was ich gemacht habe
1. Webdienst erstellt:
- Typ: „Website für native Skript-Sprachen"
- PHP 8.2, Default Profile
- Dokument-Root: `web/wert`
- HTTP-Backend: Apache HTTP Server 2.4
2. Webportal erstellt:
- Portbasiert, HTTP: 8080, HTTPS: 8443
3. Testdatei erstellt:
```bash
echo "<h1>Test</h1>" > /volume1/web/wert/test.html
```
4. Aufruf `http://xxxxnamexxxx.synology.me:8080/test.html` → **500 Internal Server Error**
## Was ich bereits geprüft habe
**Apache läuft:**
```
root 28123 /var/packages/Apache2.4/target/usr/local/bin/httpd24
http 32624 /var/packages/Apache2.4/target/usr/local/bin/httpd24
```
**Apache Konfiguration ist OK:**
```bash
sudo /var/packages/Apache2.4/target/usr/local/bin/httpd24 -t
# Syntax OK
```
**PHP-FPM Socket existiert:**
```
srw-rw---- 1 http http 0 /run/php-fpm/php-95f7fe6c-5dbc-4f31-9c63-99ef91a6df1e.sock
```
**PHP funktioniert als CLI:**
```bash
sudo -u http php /volume1/web/wert/test.php
# PHP läuft: 8.1.32
```
**Dateiberechtigungen:**
```bash
sudo -u http cat /volume1/web/wert/test.html
# Inhalt wird korrekt ausgegeben
```
**Apache Error Log ist leer:**
```
-rw-r--r-- 1 root root 0 /var/packages/WebStation/var/log/apache24_error_log
```
**Virtual Host Konfiguration:**
```apache
NameVirtualHost *:8080
NameVirtualHost *:8443
<VirtualHost *:8080 *:8443>
DocumentRoot "/volume1/web/wert"
LogLevel info
ErrorLog "/var/packages/WebStation/var/log/apache24_error_log"
<Proxy "unix:/run/php-fpm/php-95f7fe6c-5dbc-4f31-9c63-99ef91a6df1e.sock|fcgi://...">
ProxySet timeout=60
</Proxy>
<Directory "/volume1/web/wert">
AllowOverride All
Require all granted
DirectoryIndex index.php index.htm index.html
<FilesMatch "\.(php[345]?|phtml)$">
SetHandler "proxy:fcgi://..."
</FilesMatch>
</Directory>
</VirtualHost>
```
**.htaccess** enthält keine `php_flag` oder `php_value` Direktiven (wurden entfernt).
**Dateiberechtigungen** wurden per File Station für den `http` User gesetzt (Lesen + Schreiben auf alle Unterordner und Dateien).
## Fragen
1. Warum liefert Apache 500 obwohl die Konfiguration syntaktisch korrekt ist?
2. Warum ist der Apache Error Log leer obwohl Fehler auftreten?
3. Gibt es einen anderen Log-Pfad wo Apache seine Fehler schreibt?
4. Könnte das PHP-FPM Socket das Problem sein?
## Zusatzinfo
- Vor einigen Wochen lief dieselbe Konfiguration einwandfrei
- Ausgelöst wurde das Problem nach dem Hochladen neuer PHP-Dateien
- phpMyAdmin (läuft auf demselben Apache) funktioniert ebenfalls nicht mehr über Port 8443
- Ein Docker-Container (xxxSafe auf Port 8083) läuft auf derselben NAS problemlos
Für jeden Hinweis bin ich dankbar!