mod_rewrite funktioniert nur zum Teil

mardi 28 mars 2017

Werte Community,
Da ich hier schon seit Jahren regelmäßig hilfe finde möchte ich heute mal eine eigene Frage stellen und zwar weil ich mich schon seit Tagen mit mod_rewrite herum ärger.
Ich betreibe derzeit einen Debian 8 vServer (4Kerne, 16GB RAM,apache2, DomainFactory). Ich bin ansich sehr zufrieden mit dem Server da er derzeit knapp 6 Domains zuverlässig verwaltet nun habe ich aber seit dem letzten Reboot das problem das ich hinter manche URLs immer noch "/index.php" hängen muss und hinter manche eben nicht. Beispielsweise läuft Wordpress für jeweils für zwei Domains ansich problemlos trotz Permalinks mit Beitragsname, allerdins muss ich um in das Admin Panel immer noch "index.php" dran hängen (/wp-admin/index.php).
Das hat mich ansich nicht gestört, doch Gestern installierte ich dann noch die Forensoftware mybb auf einer Subdomain und hier kann ich eine Foren/Beiträge öffenen. Stattdessen aktuallisiert sich beim darauf klicken nur die Seite. Das muss ja auch an den Permalinks liegen also kopierte Ich testweise den mod_rewrite Teil aus der mybb .htaccess Datei in die vhost. Anstatt das sich nun die Seite aktuallisiert gibt es jetzt einen 404 Fehler.
Ich hoffe Ihr könnt mir helfen! :)

Forum damit Ihr euch selbst (klickt auf "Test Forum":
http://ift.tt/2o2fzLS

vhost von Wordpress:
Code:

<VirtualHost *:80>ServerAdmin webmaster@spacepc.de
DocumentRoot /var/www/spacepc
ServerName spacepc.de
DirectoryIndex index.php
ErrorLog /var/log/apache2/spacepc-error.log
</VirtualHost>
<Location />
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R]
</Location>
<Directory "/var/www/spacepc">
        Require all granted
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
</Directory>

<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@spacepc.de
DocumentRoot /var/www/spacepc/
ServerName spacepc.de
ServerAlias spacepc.de

Header always set Strict-Transport-Security: 'max-age=31536000; preload'

ErrorLog /var/log/apache2/spacepc-error.log

SSLEngine on
SSLProtocol All -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCompression off

CustomLog /var/log/apache2/spacepc-access.log combined
ServerSignature Off
SSLCertificateFile    /etc/letsencrypt/live/http://ift.tt/2o2vZn9
SSLCertificateKeyFile /etc/letsencrypt/live/http://ift.tt/2ouCgot
Include /etc/letsencrypt/options-ssl-apache.conf

<Directory "/var/www/spacepc/">
Options -Indexes +FollowSymLinks
AllowOverride all
Require all granted

</Directory>
# Mod_rewrite Wordpress
RewriteEngine On
#RewriteBase /
RewriteRule ^/$ /index.php [L]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]

</VirtualHost>

</IfModule>

vhost vom MyBB Forum:
Code:

<VirtualHost *:80>
ServerAdmin webmaster@spacepc.de
DocumentRoot /var/www/spacepcf
ServerName forum.spacepc.de
DirectoryIndex index.php
ErrorLog /var/log/apache2/spacepcf-error.log
</VirtualHost>
<Location />
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R]
</Location>
<Directory "/var/www/spacepcf">
        Require all granted
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
</Directory>

<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@spacepc.de
DocumentRoot /var/www/spacepcf/
ServerName forum.spacepc.de
DirectoryIndex index.php

Header always set Strict-Transport-Security: 'max-age=31536000; preload'

ErrorLog /var/log/apache2/spacepcf-error.log

SSLEngine on
SSLProtocol All -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCompression off

CustomLog /var/log/apache2/spacepcf-access.log combined
ServerSignature Off
SSLCertificateFile    /etc/letsencrypt/live/http://ift.tt/2o2vZn9
SSLCertificateKeyFile /etc/letsencrypt/live/http://ift.tt/2ouCgot
Include /etc/letsencrypt/options-ssl-apache.conf

<Directory "/var/www/spacepcf/">


AllowOverride all
Require all granted

</Directory>

</IfModule>


</VirtualHost>

</IfModule>

Original .htaccess vom MyBB Forum:
Code:

Options -MultiViews +FollowSymlinks -Indexes

#
# If mod_security is enabled, attempt to disable it.
# - Note, this will work on the majority of hosts but on
#  MediaTemple, it is known to cause random Internal Server
#  errors. For MediaTemple, please remove the block below
#

<IfModule mod_security.c>
        # Turn off mod_security filtering.
        SecFilterEngine Off

        # The below probably isn't needed, but better safe than sorry.
        SecFilterScanPOST Off
</IfModule>

#
# MyBB "search engine friendly" URL rewrites
# - Note, for these to work with MyBB please make sure you have
#  the setting enabled in the Admin CP and you have this file
#  named .htaccess
#

<IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteRule ^forum-([0-9]+)\.html$ forumdisplay.php?fid=$1 [L,QSA]
        RewriteRule ^forum-([0-9]+)-page-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2 [L,QSA]

        RewriteRule ^thread-([0-9]+)\.html$ showthread.php?tid=$1 [L,QSA]
        RewriteRule ^thread-([0-9]+)-page-([0-9]+)\.html$ showthread.php?tid=$1&page=$2 [L,QSA]
        RewriteRule ^thread-([0-9]+)-lastpost\.html$ showthread.php?tid=$1&action=lastpost [L,QSA]
        RewriteRule ^thread-([0-9]+)-nextnewest\.html$ showthread.php?tid=$1&action=nextnewest [L,QSA]
        RewriteRule ^thread-([0-9]+)-nextoldest\.html$ showthread.php?tid=$1&action=nextoldest [L,QSA]
        RewriteRule ^thread-([0-9]+)-newpost\.html$ showthread.php?tid=$1&action=newpost [L,QSA]
        RewriteRule ^thread-([0-9]+)-post-([0-9]+)\.html$ showthread.php?tid=$1&pid=$2 [L,QSA]

        RewriteRule ^post-([0-9]+)\.html$ showthread.php?pid=$1 [L,QSA]

        RewriteRule ^announcement-([0-9]+)\.html$ announcements.php?aid=$1 [L,QSA]

        RewriteRule ^user-([0-9]+)\.html$ member.php?action=profile&uid=$1 [L,QSA]

        RewriteRule ^calendar-([0-9]+)\.html$ calendar.php?calendar=$1 [L,QSA]
        RewriteRule ^calendar-([0-9]+)-year-([0-9]+)-month-([0-9]+)\.html$ calendar.php?calendar=$1&year=$2&month=$3 [L,QSA]
        RewriteRule ^calendar-([0-9]+)-year-([0-9]+)-month-([0-9]+)-day-([0-9]+)\.html$ calendar.php?action=dayview&calendar=$1&year=$2&month=$3&day=$4 [L,QSA]
        RewriteRule ^calendar-([0-9]+)-week-(n?[0-9]+)\.html$ calendar.php?action=weekview&calendar=$1&week=$2 [L,QSA]

        RewriteRule ^event-([0-9]+)\.html$ calendar.php?action=event&eid=$1 [L,QSA]

        <IfModule mod_env.c>
                SetEnv SEO_SUPPORT 1
        </IfModule>
</IfModule>
#
# If Apache is compiled with built in mod_deflade/GZIP support
# then GZIP Javascript, CSS, HTML and XML so they're sent to
# the client faster.
#
<IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/css text/html application/xhtml+xml text/xml application/xml text/plain text/x-component application/javascript application/x-javascript application/rss+xml application/atom+xml application/json application/manifest+json application/x-web-app-manifest+json application/vnd.ms-fontobject application/font-sfnt application/font-woff application/font-woff2 image/svg+xml image/x-icon
</IfModule>

# Note: You are able to choose a different name in the Admin CP. If you've done that you need to change it here too
<Files "error.log">
        Order Deny,Allow
        Deny from all
</Files>



0 commentaires:

Enregistrer un commentaire

 

Lorem

Ipsum

Dolor