Probleme mit Apache, leere Seite

  • Thread starter Thread starter Deleted member 13046
  • Start date Start date
D

Deleted member 13046

Guest
Hallo Allen, ich hab einen Vserver neu gemacht mit apache2, PHP7.1 und ISPconf , letsencrypt SSL auf xyz.de usw.
Das ISPconf kann ich öffnen und darin arbeiten. Läuft gut.

Nun hab ich im ISPconf eine Seite xyz.de angelegt. Dateien per FTP hochgeladen aber es führt die einfach nicht aus. In allen logs steht nichts weiter drin.
Hab dann mal eine info.php (<?php phpinfo();?>) in das Root der xyz.de gelegt und beim aufruf bleibt die Seite leer.
Hab die info.php mal in den ISPconf. Ordner verschoben, da wird alles super angezeigt.
Hier mal meine Apache conf
PHP:
<Directory /var/www/xyz.de>
		AllowOverride None
				Order allow,deny
  Allow from all
		</Directory>

<VirtualHost *:80>

									DocumentRoot /var/www/xyz.de/web
						
		ServerName xyz.de
		ServerAlias www.xyz.de
		ServerAdmin webmaster@xyz.de

		ErrorLog /var/log/ispconfig/httpd/xyz.de/error.log



		<Directory /var/www/xyz.de/web>
				# Clear PHP settings of this website
				<FilesMatch ".+\.ph(p[345]?|t|tml)$">
						SetHandler None
				</FilesMatch>
				Options +FollowSymLinks
				AllowOverride All
								Require all granted
								<Files ~ '.php[s3-6]{0,1}$'>
												Require all denied
										</Files>
		</Directory>
		<Directory /var/www/clients/client2/web1/web>
		Order allow,deny
  Allow from all
				# Clear PHP settings of this website
				<FilesMatch ".+\.ph(p[345]?|t|tml)$">
						SetHandler None
				</FilesMatch>
				Options +FollowSymLinks
				AllowOverride All
								Require all granted
								<Files ~ '.php[s3-6]{0,1}$'>
										Require all denied
									</Files>
		</Directory>




		# suexec enabled
		<IfModule mod_suexec.c>
			SuexecUserGroup web1 client2
		</IfModule>



		# add support for apache mpm_itk
		<IfModule mpm_itk_module>
			AssignUserId web1 client2
		</IfModule>

	<IfModule mod_dav_fs.c>
	<Location /webdav>
		<IfModule mod_security2.c>
		SecRuleRemoveById 960015
		SecRuleRemoveById 960032
		</IfModule>
		DirectoryIndex disabled
		SetHandler None
	</Location>
	DavLockDB /var/www/clients/client2/web1/tmp/DavLock
	# needed by apache2_plugin.inc.php
# WEBDAV BEGIN
	# WEBDAV END
	</IfModule>



</VirtualHost>

Einer eine Idee was das sein kann?

Wenn ich meine Seite https://www.xyz.de aufrufe, dann kommen da nur Zeichen der ersten index.php aber es wird nichts ausgeführt.
PHP:
set_data('GET', $_GET); $coo_listing_control->set_data('POST', $_POST); $coo_listing_control->set_('c_path', $GLOBALS['cPath']); if(isset($_GET['cat'])) { $coo_listing_control->set_('cat', $_GET['cat']); } if(isset($GLOBALS['cID'])) { $coo_listing_control->set_('categories_id', ...
Sehr komische Sache das.

Wer kann mir da mal helfen?
 
in /etc/php/7.1/apache2 (und cgi, cli)

short_open_tag = Off

noch jemand Ideen?
 
mod_php oder PHP-FPM?
Wer hat die vhost.conf verbrochen?
Liegen die Scripts wirklich im DocumentRoot?
Die Logs wirklich leer?
 
Hab im ISPconfig mod-php und fpm probiert. ist egal was ich mache ändert nichts.
vhost.conf kommt von ISPconfig

nun
DocumentRoot ist /var/www/clients/client2/web1/
unter /var/www/ist ein symlink xyz.de auf /var/www/clients/client2/web1/
Log /var/log/apache2/error.log (startrek ist natürlich ersetzt ;-) )
Ist nur SSL Mängel vom ISPconfig, der nur unter einer IP läuft.

PHP:
[Mon Apr 17 13:29:03.700926 2017] [auth_digest:notice] [pid 31345] AH01757: generating secret for digest authentication ...
[Mon Apr 17 13:29:03.742120 2017] [ssl:warn] [pid 31345] AH01906: voyager.startek.de:8080:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Mon Apr 17 13:29:03.742137 2017] [ssl:warn] [pid 31345] AH01909: voyager.startek.de:8080:0 server certificate does NOT include an ID which matches the server name
[Mon Apr 17 13:29:03.742170 2017] [ssl:error] [pid 31345] AH02217: ssl_stapling_init_cert: can't retrieve issuer certificate! [subject: O=Internet Widgits Pty Ltd,ST=Some-State,C=DE / issuer: O=Internet Widgits Pty Ltd,ST=Some-State,C=DE / serial: A32D450AF7BC16DB / notbefore: Apr 16 17:18:48 2017 GMT / notafter: Apr 14 17:18:48 2027 GMT]
[Mon Apr 17 13:29:03.742173 2017] [ssl:error] [pid 31345] AH02567: Unable to configure certificate voyager.startek.de:8080:0 for stapling
[Mon Apr 17 13:29:03.744677 2017] [mpm_prefork:notice] [pid 31345] AH00163: Apache/2.4.10 (Debian) mod_fcgid/2.3.9 OpenSSL/1.0.1t configured -- resuming normal operations
[Mon Apr 17 13:29:03.744689 2017] [core:notice] [pid 31345] AH00094: Command line: '/usr/sbin/apache2'
 
Was soll short_open_tag damit zu tun haben?
Und was soll das Markup der Seite über short_open_tag aussagen?
 
Ohne vollständige Konfiguration und Logs wird das Debugging schwierig.

Vermutung: Das dumme Adminpanel ist noch immer nicht 100% Apache 2.4 kompatibel (erkennbar unter Anderem am Order/Allow (mod_access_compat)) und die Konfiguration sowie der Symlink Quatsch sind mindestens suboptimal bis maximal kaputt (erkennbar unter Anderem am "Clear PHP settings of this website").

Ich möchte eigentlich die Einbindung und Konfiguration von PHP-FPM gar nicht erst sehen, allerdings kommen wir daran nicht herum wenn wir dem OP wenigstens etwas helfen wollen.


Kleiner Tipp meinerseits: Schmeiss dass scheiss Adminpanel weg, es macht Dir das Leben nur schwerer statt leichter. Gilt übrigens für alle Adminpanels...
 
Mal angenommen dort steht im Script: <? foobar(); ?>

Dann würde es von PHP ohne die Short Open Tags Konfiguration nicht ausgeführt werden. Im Browser jedoch wird die Hälfte vom PHP-Code verschluckt, wenn man nicht die Quelltextansicht öffnet.

Darauf bezog sich mein Beitrag. Es muss nicht daran liegen, könnte aber trotzdem sein. Ohne das Script zu kennen, ist es natürlich nur geraten.


MfG Christian
 
Seine phpinfo() hat kein short_open_tag und funktioniert ebenfalls nicht, daher kann es nicht an short_open_tag liegen.

Und wer heutzutage noch völlig veraltete Scripts mit short_open_tag einsetzt, der hat ganz andere Probleme...
 
So bin etwas weiter. Hab festgestellt das es mit dem Zertifikat zusammen hängen muss, denn der oben genannte Effekt tritt nur auf wenn ich die Seite über HTTPS lade.
Hab beim installieren des Zertifikates (Let’s Encrypt via certbot --apache) habe ich die Umleitung aller HTTP-Requests auf HTTPS eingestellt und so ist mir das nicht gleich aufgefallen. Ohne HTTPS geht auch die info.php ;-)

Was genau kann das denn sein das Seiten via HTTPS nicht korrekt laufen?
die apache2 config für ssl sieht so aus:
PHP:
<IfModule mod_ssl.c>

<Directory /var/www/xyz.de>
		AllowOverride None
				Require all denied
		</Directory>

<VirtualHost *:443>

					DocumentRoot /var/www/clients/client2/web1/web
			
		ServerName xyz.de
		ServerAlias www.xyz.de
		ServerAdmin webmaster@xyz.de

		ErrorLog /var/log/ispconfig/httpd/xyz.de/error.log



		<Directory /var/www/xyz.de/web>
				# Clear PHP settings of this website
				<FilesMatch ".+\.ph(p[345]?|t|tml)$">
						SetHandler None
				</FilesMatch>
				Options +FollowSymLinks
				AllowOverride All
								Require all granted
						</Directory>
		<Directory /var/www/clients/client2/web1/web>
				# Clear PHP settings of this website
				<FilesMatch ".+\.ph(p[345]?|t|tml)$">
						SetHandler None
				</FilesMatch>
				Options +FollowSymLinks
				AllowOverride All
								Require all granted
						</Directory>




		# suexec enabled
		<IfModule mod_suexec.c>
			SuexecUserGroup web1 client2
		</IfModule>
		<IfModule mod_fastcgi.c>
				<Directory /var/www/clients/client2/web1/cgi-bin>
										Require all granted
								    </Directory>
				<Directory /var/www/xyz.de/web>
					<FilesMatch "\.php[345]?$">
                                                <If "-f %{DOCUMENT_ROOT} . '/' . %{REQUEST_URI}">
                                SetHandler php5-fcgi
                            </If>
                    					</FilesMatch>
				</Directory>
				<Directory /var/www/clients/client2/web1/web>
					<FilesMatch "\.php[345]?$">
                                                <If "-f %{DOCUMENT_ROOT} . '/' . %{REQUEST_URI}">
                                SetHandler php5-fcgi
                            </If>
                    					</FilesMatch>
				</Directory>
                Action php5-fcgi /php5-fcgi virtual
				Alias /php5-fcgi /var/www/clients/client2/web1/cgi-bin/php5-fcgi-*-80-xyz.de
                FastCgiExternalServer /var/www/clients/client2/web1/cgi-bin/php5-fcgi-*-80-xyz.de -idle-timeout 300 -host 127.0.0.1:9010 -pass-header Authorization             
		</IfModule>
		<IfModule mod_proxy_fcgi.c>
			#ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ fcgi://127.0.0.1:9010/var/www/clients/client2/web1/web/$1
			<Directory /var/www/clients/client2/web1/web>
				<FilesMatch "\.php[345]?$">
                                                <If "-f %{DOCUMENT_ROOT} . '/' . %{REQUEST_URI}">
                                    SetHandler "proxy:fcgi://127.0.0.1:9010"
                            </If>
                    				</FilesMatch>
			</Directory>
			</IfModule>



		# add support for apache mpm_itk
		<IfModule mpm_itk_module>
			AssignUserId web1 client2
		</IfModule>

	<IfModule mod_dav_fs.c>
	<Location /webdav>
		<IfModule mod_security2.c>
		SecRuleRemoveById 960015
		SecRuleRemoveById 960032
		</IfModule>
		DirectoryIndex disabled
		SetHandler None
	</Location>
	DavLockDB /var/www/clients/client2/web1/tmp/DavLock
	# needed by apache2_plugin.inc.php
# WEBDAV BEGIN
	# WEBDAV END
	</IfModule>



SSLCertificateFile /etc/letsencrypt/live/www.xyz.de/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.xyz.de/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>


</IfModule>
 
Back
Top