Essentially I've the next during my .htaccess file within the cause of my website:

Options -Indexes

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?route=$1 [L,QSA]

During my PHP script after i use $_GET['route'] I recieve the next error:

Notice: Undefined index: route

I do not realise why this is not working? I have used this code previously on the previous website for friendly Web addresses and also the PHP script got the GET request value fine, however it appears to become playing up now :/

After I get it done by hand like http://localhost/index.php?route=hmm the mistake disappears and that i could possibly get the need for $_GET['route']

What shall we be held doing wrong? Request if you want any extra information! Thank you for reading through.

I personally use this for URI spinning (routing):

Options +FollowSymLinks
IndexIgnore */*
# Turn on the RewriteEngine
RewriteEngine On
# Rules
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php

And parse it with:

class Dispatcher {
    private static function parse_uri() {
        if (self::$uri_parsed === false) {
            // Clean URI
            $uri = preg_replace('~|/+$|/(?=/)~', '', $_SERVER['REQUEST_URI']);

            // Strip get variables from request
            $get_position = strpos($uri, '?');
            if ($get_position !== false) {
                $striped_get = substr($uri, 0, $get_position);
            } else {
                $striped_get = $uri;

            // Get the file and directory of the request
            if (strstr($striped_get, '.') != false) {
                // Strip the file from the URI
                $slash_position = strrpos($striped_get, '/');
                if ($slash_position !== false) {
                    $striped_file = substr($striped_get, 0, $slash_position + 1);
                } else {
                    $striped_file = $striped_get;
                self::$command = $striped_file;
                self::$file    = substr($striped_get, strlen(self::$command));
            } else {
                self::$command = $striped_get;
                self::$file    = '';
            // Trim slashes and replace dashes with underscores
            self::$command = str_replace('-', '_', trim(self::$command, '/'));

            if (DEBUG) {
                // Log the results
                Logger::log('Command: '.self::$command, self::LOG_TYPE);
                Logger::log('File: '.(self::$file ? self::$file : 'N/A'), self::LOG_TYPE);

            self::$uri_parsed = true;