2016-08-03 20 views
1

Ich versuche URLs neu zu schreiben, so dass sie nicht die index.php in ihnen in Apache haben. Alles hat bisher gut funktioniert, aber ich musste Querystring-Parameter in einer GET-Anfrage senden und erkannte, dass sie abgezogen wurden. Ich benutze das QSA-Flag, aber es funktioniert nicht und mein Abfrage-String kommt niemals zum Server.Apache Rewrite-Regel löscht Abfrage-String

<VirtualHost noomo.jp:443> 
DocumentRoot /var/www/noomo-web/public 
<Directory "/var/www/noomo-web/public"> 
AllowOverride All 
Options -Multiviews 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php?/$1 [L,QSA] 
</Directory> 
SSLCertificateFile /etc/letsencrypt/live/noomo.jp/fullchain.pem 
SSLCertificateKeyFile /etc/letsencrypt/live/noomo.jp/privkey.pem 
Include /etc/letsencrypt/options-ssl-apache.conf 
ServerName noomo.jp 
</VirtualHost> 

Fehle ich etwas, das benötigt wird, um den Query-String zu übergeben? Ich habe überall in Google nachgeschaut, aber alles, was ich finden kann, bezieht sich nur auf das Weiterleiten basierend auf der Abfragezeichenfolge, nicht dafür, dass die Abfragezeichenfolge durchkommt. Ich hatte die gleiche Sache zuvor auf einem Nginx-Server geschehen, aber ich weiß nicht, wie man es auf Apache repariert.

+0

Können Sie R-Flag auch hinzufügen ('[L, QSA, R]') und überprüfen, was das genaue Ergebnis Ihrer Regel ist? –

+0

Ich habe das R-Flag hinzugefügt und es machte keinen Unterschied, die Abfragezeichenfolge ist immer noch nicht vorhanden und ich habe es mit einem einmaligen PHP-Skript getestet, das nur die Abfragezeichenfolge widergibt. Wenn ich jedoch den index.php Teil zur URL hinzufüge, funktioniert es gut. Was mache ich in meinem Neuschreiben, das streicht die Abfragezeichenfolge? – DarthCoder

Antwort

0

Ah! Fand es! Okay, ich werde meine eigene Frage beantworten, damit die Leute das sehen, wenn sie das gleiche Problem haben, denn das hat Stunden gedauert, bis ich realisiert habe ... Anscheinend können Sie keine neuen Einträge in den Eintrag schreiben oder sie werden nicht richtig funktionieren. Ich habe die Rewrite-Regeln verschoben und sie direkt in den Eintrag eingefügt, und es funktioniert jetzt.