.htaccess
  • redirect
  • joomla
  • 2016-07-05 4 views 1 likes 
    1

    Ich habe eine Anweisung, die Umleitung vor Ort auf 404-Seite zu machen, wenn der Reaquest-Parameter nicht angegeben ist, d. H. "QWERTY" (wobei "QWERTY" einen ungültigen Parameter ohne '=' und einen beliebigen Wert bedeutet) umgeleitet werden muss. Ich habe .htaccess-Datei geschrieben (Website arbeitet mit Joomla). Sie können das folgende Fragment sehen:Wie kann ich URL umleiten, wo Parameter nicht über .htaccess auf 404-Seite Wert haben?

    RewriteCond %{REQUEST_METHOD} GET 
    RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=http:// [OR] 
    RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=(\.\.//?)+ [OR] 
    RewriteCond %{QUERY_STRING} [a-zA-Z0-9_]=/([a-z0-9_.]//?)+ [OR] 
    #Next string redirects all of requests with parameters 
    RewriteCond %{QUERY_STRING} [a-zA-Z0-9_] [NC] 
    RewriteRule ^(.*)$ index.php [R=404,L] 
    

    Aber jetzt Website kann keine Anfrage mit Parameter verarbeiten. Wie kann ich dieses Problem lösen?

    Antwort

    0

    -404 So zu leiten, wenn die Abfrage Wert Parameter fehlt, können Sie verwenden:

    RewriteEngine on 
    
    
    RewriteCond %{QUERY_STRING} ^querty$ [OR] 
    RewriteCond %{QUERY_STRING} ^querty=$ 
    
    RewriteRule ^$ - [R=404,L] 
    

    Diese example.com/?quertyoderexample.com/?querty=zu/404 umleitet.

    +1

    Danke, aber ich meinte, es muss jeden Parameternamen umleiten. Du hast mir Idee, den Code unten funktioniert, wie ich will: 'RewriteCond% {QUERY_STRING}^[a-zA-Z0-9 _] + $ [OR] RewriteCond% {QUERY_STRING}^[a-zA-Z0-9_ ] + = $ [NC] RewriteRule^$ - [R = 404, L] ' – andreytemn

     Verwandte Themen

    • Keine verwandten Themen^_^