Short guide to Bucharest’s public transport, taxis and car sharing services

12 June 2018 • News

Short guide to Bucharest’s public transport, taxis and car sharing services

26 Jan 2018 by Irina Marica

It is well known that the Romanian capital is among the world’s cities with the most congested traffic. So what other choices are there for those days when driving doesn’t seem to be an option or for those moments when you just don’t feel like driving? How can you get around Bucharest when you are in the city for just a few days? We’ve made a list of options, which includes buses and trams, the subway, taxis, and ride sharing services such as Uber and Taxify, as well as all you need to know about them.

Public transport – buses, trams, trolleybuses
RATB is the company running the network of buses, trams and trolleybuses in Bucharest. In addition to the bus and tram lines linking different parts of Bucharest, there are also express bus lines to the Otopeni Airport, as well as several night lines. Moreover, the Bucharest City Tour line operates in the summer, being the perfect choice for tourists visiting the capital, while the recently launched Museums’ Line connects the main museums in Bucharest.

A trip by bus, tram or trolleybus costs RON 1.3 (some 28 euro cents) while a trip by the express bus has the price of RON 3.5 (EUR 0.75). However, RATB also offers several types of subscriptions, namely one-day, 7-day or 15-day passes, and monthly passes. Their prices vary depending on the lines/line the user needs it for, with discounts being applied for students, pensioners or blood donors.

The RATB travel cards can be charged at the ticket kiosks that are usually located in stations, or by SMS, and must be validated at the orange devices inside the bus/tram. More information on tickets can be found on the RATB website here (it also has an English version).

Unfortunately, the buses and trams running in Bucharest are not equipped with GPS trackers and thus there is no information on the buses’ ETA in the stations. The Bucharest City hall has promised it would introduce such features in the near future.

One can plan a route on the RATB website here, or with the help of mobile apps such as the Google Maps, Moovit or Transport Urban.

Underground transport – the subway
The Bucharest subway is ran by Metrorex. The metro system is made up of four lines (M1, M2, M3 and M4) with a total of 53 stations. Taking the subway is usually the best choice in Bucharest, even during rush hours when the capital gets extremely crowded. Unlike the buses or trams, you can estimate how much time you’ll need to reach your destination, especially as the trains’ ETA is shown in stations.

Unfortunately, taking the subway is not yet an option for those who want to go to the Otopeni airport. Authorities hope to have this line finished by 2020.

The metro trains run daily from 05:00 to 23:00. Travelers can choose from several types of cards, such as the two-trip card (RON 5), 10-trip card (RON 20), one-day pass (RON 8), weekly, monthly or yearly passes, and cards for groups.

Moreover, RATB and Metrorex have introduced several types of single tickets in December last year, which means that a person can travel by both bus/tram/trolleybus and subway with only one ticket. For example, a single ticket valid for 60 minutes costs RON 5 while a one-day joint pass costs RON 17. They can be purchased from both RATB and Metrorex ticket offices. More details here.

Taxi
There are several taxi companies in Bucharest, such as Meridian, Speed Taxi, Cristaxi, Taxi 2000, Cobalcescu and Pelicanul. Their tariffs start at around RON 1.39 per km but can go up to RON 3.5 per km, and the prices are usually written on the cars’ doors. The numbers for calling a cab can be found on the cars, as well as on the taxi companies’ websites, with some of them even having mobile apps.

For those landing at the airport, it is recommended to take one of the taxis from the dedicated area in front of Arrivals, or order a taxi with the help of the touch screens in the airport. Find more information on airport taxis here.

A dedicated area for taxis can also be found at the Gara de Nord railway station. Similar to the airport, it’s recommended to take a taxi from there and not one of the cabs waiting in other places.

The Bucharest City Hall has prepared special rules for the taxi companies in Bucharest. According to the new taxi transport regulation put up for public debate on the City Hall’s website, taxi companies in Bucharest may be obliged to introduce a card payment system in all cars, and the taxi drivers may be fined if they refuse trips. If applied properly, the latter may solve one of the biggest problems Bucharesters have with taxi drivers, as some have complained that the drivers refuse them if the trip is “too short.” The draft project also stipulates that the taxi drivers are obliged to have a civilized and preventive behavior towards other road users and the control authorities. More information on the new rules can be found here.

Ride-sharing: Uber, Taxify
There are two companies offering ride-sharing services in Bucharest, namely Uber and Taxify. Both are cheaper than the taxis, but their activity may be affected by the City Hall’s new regulation, which stipulates that only authorized carriers with dispatch services authorized by the municipality will be able to carry out taxi transport activities in the Romanian capital.

To get an Uber or Taxify ride, the user needs to install the app, make an account and set a payment method, and then request a ride. Uber has also introduced a new option in Bucharest, which lets users tip their drivers.

Premium taxi services
Several premium taxi services are also available in Bucharest for business clients or those willing to pay extra for comfort. Black Cab, Taxi Bucuresti, Elegance Taxi are some of the companies that offer such premium taxi services, including airport pickup services.

Black Cab has a flat rate for airport pickup services, namely RON 70 (some EUR 15), which is convenient for travelers who don’t want to worry about the final cost of their ride. Although traditional cabs are should be cheaper, sometimes they take advantage of foreign tourists and increase their bill or don’t pay change.

Source: Romania Insider

Photo source: Metrorex on Facebook



Whoops! There was an error.
Predis \ Response \ ServerException
MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error. Predis\Response\ServerException thrown with message "MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error. " Stacktrace: #12 Predis\Response\ServerException in /var/www/html/blissimobiliare/vendor/predis/predis/src/Client.php:370 #11 Predis\Client:onErrorResponse in /var/www/html/blissimobiliare/vendor/predis/predis/src/Client.php:335 #10 Predis\Client:executeCommand in /var/www/html/blissimobiliare/vendor/predis/predis/src/Client.php:314 #9 Predis\Client:__call in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php:114 #8 Illuminate\Redis\Connections\Connection:command in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php:214 #7 Illuminate\Redis\Connections\Connection:__call in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Cache/RedisStore.php:93 #6 Illuminate\Cache\RedisStore:put in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Cache/Repository.php:208 #5 Illuminate\Cache\Repository:put in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Session/CacheBasedSessionHandler.php:66 #4 Illuminate\Session\CacheBasedSessionHandler:write in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Session/Store.php:129 #3 Illuminate\Session\Store:save in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:87 #2 Illuminate\Session\Middleware\StartSession:terminate in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:218 #1 Illuminate\Foundation\Http\Kernel:terminateMiddleware in /var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:189 #0 Illuminate\Foundation\Http\Kernel:terminate in /var/www/html/blissimobiliare/public/index.php:58
12
Predis\Response\ServerException
/vendor/predis/predis/src/Client.php370
11
Predis\Client onErrorResponse
/vendor/predis/predis/src/Client.php335
10
Predis\Client executeCommand
/vendor/predis/predis/src/Client.php314
9
Predis\Client __call
/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php114
8
Illuminate\Redis\Connections\Connection command
/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php214
7
Illuminate\Redis\Connections\Connection __call
/vendor/laravel/framework/src/Illuminate/Cache/RedisStore.php93
6
Illuminate\Cache\RedisStore put
/vendor/laravel/framework/src/Illuminate/Cache/Repository.php208
5
Illuminate\Cache\Repository put
/vendor/laravel/framework/src/Illuminate/Session/CacheBasedSessionHandler.php66
4
Illuminate\Session\CacheBasedSessionHandler write
/vendor/laravel/framework/src/Illuminate/Session/Store.php129
3
Illuminate\Session\Store save
/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php87
2
Illuminate\Session\Middleware\StartSession terminate
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php218
1
Illuminate\Foundation\Http\Kernel terminateMiddleware
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php189
0
Illuminate\Foundation\Http\Kernel terminate
/public/index.php58
/var/www/html/blissimobiliare/vendor/predis/predis/src/Client.php
     *
     * @return mixed
     */
    protected function onErrorResponse(CommandInterface $command, ErrorResponseInterface $response)
    {
        if ($command instanceof ScriptCommand && $response->getErrorType() === 'NOSCRIPT') {
            $eval = $this->createCommand('EVAL');
            $eval->setRawArguments($command->getEvalArguments());
 
            $response = $this->executeCommand($eval);
 
            if (!$response instanceof ResponseInterface) {
                $response = $command->parseResponse($response);
            }
 
            return $response;
        }
 
        if ($this->options->exceptions) {
            throw new ServerException($response->getMessage());
        }
 
        return $response;
    }
 
    /**
     * Executes the specified initializer method on `$this` by adjusting the
     * actual invokation depending on the arity (0, 1 or 2 arguments). This is
     * simply an utility method to create Redis contexts instances since they
     * follow a common initialization path.
     *
     * @param string $initializer Method name.
     * @param array  $argv        Arguments for the method.
     *
     * @return mixed
     */
    private function sharedContextFactory($initializer, $argv = null)
    {
        switch (count($argv)) {
            case 0:
Arguments
  1. "MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error.  "
    
/var/www/html/blissimobiliare/vendor/predis/predis/src/Client.php
    }
 
    /**
     * {@inheritdoc}
     */
    public function createCommand($commandID, $arguments = array())
    {
        return $this->profile->createCommand($commandID, $arguments);
    }
 
    /**
     * {@inheritdoc}
     */
    public function executeCommand(CommandInterface $command)
    {
        $response = $this->connection->executeCommand($command);
 
        if ($response instanceof ResponseInterface) {
            if ($response instanceof ErrorResponseInterface) {
                $response = $this->onErrorResponse($command, $response);
            }
 
            return $response;
        }
 
        return $command->parseResponse($response);
    }
 
    /**
     * Handles -ERR responses returned by Redis.
     *
     * @param CommandInterface       $command  Redis command that generated the error.
     * @param ErrorResponseInterface $response Instance of the error response.
     *
     * @throws ServerException
     *
     * @return mixed
     */
    protected function onErrorResponse(CommandInterface $command, ErrorResponseInterface $response)
    {
Arguments
  1. Predis\Command\StringSetExpire {}
    
  2. Predis\Response\Error {}
    
/var/www/html/blissimobiliare/vendor/predis/predis/src/Client.php
        );
 
        if ($response instanceof ResponseInterface) {
            if ($response instanceof ErrorResponseInterface) {
                $error = true;
            }
 
            return (string) $response;
        }
 
        return $response;
    }
 
    /**
     * {@inheritdoc}
     */
    public function __call($commandID, $arguments)
    {
        return $this->executeCommand(
            $this->createCommand($commandID, $arguments)
        );
    }
 
    /**
     * {@inheritdoc}
     */
    public function createCommand($commandID, $arguments = array())
    {
        return $this->profile->createCommand($commandID, $arguments);
    }
 
    /**
     * {@inheritdoc}
     */
    public function executeCommand(CommandInterface $command)
    {
        $response = $this->connection->executeCommand($command);
 
        if ($response instanceof ResponseInterface) {
            if ($response instanceof ErrorResponseInterface) {
Arguments
  1. Predis\Command\StringSetExpire {}
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php
     * @param  \Closure  $callback
     * @return void
     */
    public function psubscribe($channels, Closure $callback)
    {
        return $this->createSubscription($channels, $callback, __FUNCTION__);
    }
 
    /**
     * Run a command against the Redis database.
     *
     * @param  string  $method
     * @param  array   $parameters
     * @return mixed
     */
    public function command($method, array $parameters = [])
    {
        $start = microtime(true);
 
        $result = $this->client->{$method}(...$parameters);
 
        $time = round((microtime(true) - $start) * 1000, 2);
 
        if (isset($this->events)) {
            $this->event(new CommandExecuted($method, $parameters, $time, $this));
        }
 
        return $result;
    }
 
    /**
     * Fire the given event if possible.
     *
     * @param  mixed  $event
     * @return void
     */
    protected function event($event)
    {
        if (isset($this->events)) {
            $this->events->dispatch($event);
Arguments
  1. "setex"
    
  2. array:3 [
      0 => "laravel:8S69StdfuogFbDUhzq8XlpV0QN0z3WsnjqjVTyha"
      1 => 7200
      2 => "s:352:"a:4:{s:6:"_token";s:40:"Gwh0lA9t95sdnqSOCwpgzIHwBGllmatP7id442Xi";s:9:"_previous";a:1:{s:3:"url";s:157:"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21";}s:22:"PHPDEBUGBAR_STACK_DATA";a:0:{}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}";"
    ]
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Redis/Connections/Connection.php
    /**
     * Unset the event dispatcher instance on the connection.
     *
     * @return void
     */
    public function unsetEventDispatcher()
    {
        $this->events = null;
    }
 
    /**
     * Pass other method calls down to the underlying client.
     *
     * @param  string  $method
     * @param  array  $parameters
     * @return mixed
     */
    public function __call($method, $parameters)
    {
        return $this->command($method, $parameters);
    }
}
 
Arguments
  1. "setex"
    
  2. array:3 [
      0 => "laravel:8S69StdfuogFbDUhzq8XlpV0QN0z3WsnjqjVTyha"
      1 => 7200
      2 => "s:352:"a:4:{s:6:"_token";s:40:"Gwh0lA9t95sdnqSOCwpgzIHwBGllmatP7id442Xi";s:9:"_previous";a:1:{s:3:"url";s:157:"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21";}s:22:"PHPDEBUGBAR_STACK_DATA";a:0:{}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}";"
    ]
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Cache/RedisStore.php
 
        foreach ($values as $index => $value) {
            $results[$keys[$index]] = ! is_null($value) ? $this->unserialize($value) : null;
        }
 
        return $results;
    }
 
    /**
     * Store an item in the cache for a given number of minutes.
     *
     * @param  string  $key
     * @param  mixed   $value
     * @param  float|int  $minutes
     * @return void
     */
    public function put($key, $value, $minutes)
    {
        $this->connection()->setex(
            $this->prefix.$key, (int) max(1, $minutes * 60), $this->serialize($value)
        );
    }
 
    /**
     * Store multiple items in the cache for a given number of minutes.
     *
     * @param  array  $values
     * @param  float|int  $minutes
     * @return void
     */
    public function putMany(array $values, $minutes)
    {
        $this->connection()->multi();
 
        foreach ($values as $key => $value) {
            $this->put($key, $value, $minutes);
        }
 
        $this->connection()->exec();
    }
Arguments
  1. "setex"
    
  2. array:3 [
      0 => "laravel:8S69StdfuogFbDUhzq8XlpV0QN0z3WsnjqjVTyha"
      1 => 7200
      2 => "s:352:"a:4:{s:6:"_token";s:40:"Gwh0lA9t95sdnqSOCwpgzIHwBGllmatP7id442Xi";s:9:"_previous";a:1:{s:3:"url";s:157:"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21";}s:22:"PHPDEBUGBAR_STACK_DATA";a:0:{}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}";"
    ]
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Cache/Repository.php
    }
 
    /**
     * Store an item in the cache.
     *
     * @param  string  $key
     * @param  mixed   $value
     * @param  \DateTimeInterface|\DateInterval|float|int|null  $minutes
     * @return void
     */
    public function put($key, $value, $minutes = null)
    {
        if (is_array($key)) {
            $this->putMany($key, $value);
 
            return;
        }
 
        if (! is_null($minutes = $this->getMinutes($minutes))) {
            $this->store->put($this->itemKey($key), $value, $minutes);
 
            $this->event(new KeyWritten($key, $value, $minutes));
        }
    }
 
    /**
     * {@inheritdoc}
     */
    public function set($key, $value, $ttl = null)
    {
        $this->put($key, $value, $ttl);
    }
 
    /**
     * Store multiple items in the cache for a given number of minutes.
     *
     * @param  array  $values
     * @param  \DateTimeInterface|\DateInterval|float|int  $minutes
     * @return void
     */
Arguments
  1. "8S69StdfuogFbDUhzq8XlpV0QN0z3WsnjqjVTyha"
    
  2. "a:4:{s:6:"_token";s:40:"Gwh0lA9t95sdnqSOCwpgzIHwBGllmatP7id442Xi";s:9:"_previous";a:1:{s:3:"url";s:157:"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21";}s:22:"PHPDEBUGBAR_STACK_DATA";a:0:{}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}"
    
  3. 120
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Session/CacheBasedSessionHandler.php
     */
    public function close()
    {
        return true;
    }
 
    /**
     * {@inheritdoc}
     */
    public function read($sessionId)
    {
        return $this->cache->get($sessionId, '');
    }
 
    /**
     * {@inheritdoc}
     */
    public function write($sessionId, $data)
    {
        return $this->cache->put($sessionId, $data, $this->minutes);
    }
 
    /**
     * {@inheritdoc}
     */
    public function destroy($sessionId)
    {
        return $this->cache->forget($sessionId);
    }
 
    /**
     * {@inheritdoc}
     */
    public function gc($lifetime)
    {
        return true;
    }
 
    /**
     * Get the underlying cache repository.
Arguments
  1. "8S69StdfuogFbDUhzq8XlpV0QN0z3WsnjqjVTyha"
    
  2. "a:4:{s:6:"_token";s:40:"Gwh0lA9t95sdnqSOCwpgzIHwBGllmatP7id442Xi";s:9:"_previous";a:1:{s:3:"url";s:157:"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21";}s:22:"PHPDEBUGBAR_STACK_DATA";a:0:{}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}"
    
  3. 120
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Session/Store.php
     *
     * @param  string  $data
     * @return string
     */
    protected function prepareForUnserialize($data)
    {
        return $data;
    }
 
    /**
     * Save the session data to storage.
     *
     * @return bool
     */
    public function save()
    {
        $this->ageFlashData();
 
        $this->handler->write($this->getId(), $this->prepareForStorage(
            serialize($this->attributes)
        ));
 
        $this->started = false;
    }
 
    /**
     * Prepare the serialized session data for storage.
     *
     * @param  string  $data
     * @return string
     */
    protected function prepareForStorage($data)
    {
        return $data;
    }
 
    /**
     * Age the flash data for the session.
     *
     * @return void
Arguments
  1. "8S69StdfuogFbDUhzq8XlpV0QN0z3WsnjqjVTyha"
    
  2. "a:4:{s:6:"_token";s:40:"Gwh0lA9t95sdnqSOCwpgzIHwBGllmatP7id442Xi";s:9:"_previous";a:1:{s:3:"url";s:157:"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21";}s:22:"PHPDEBUGBAR_STACK_DATA";a:0:{}s:6:"_flash";a:2:{s:3:"old";a:0:{}s:3:"new";a:0:{}}}"
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php
        if ($this->sessionConfigured()) {
            $this->storeCurrentUrl($request, $session);
 
            $this->addCookieToResponse($response, $session);
        }
 
        return $response;
    }
 
    /**
     * Perform any final actions for the request lifecycle.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Symfony\Component\HttpFoundation\Response  $response
     * @return void
     */
    public function terminate($request, $response)
    {
        if ($this->sessionHandled && $this->sessionConfigured() && ! $this->usingCookieSessions()) {
            $this->manager->driver()->save();
        }
    }
 
    /**
     * Start the session for the given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Contracts\Session\Session
     */
    protected function startSession(Request $request)
    {
        return tap($this->getSession($request), function ($session) use ($request) {
            $session->setRequestOnHandler($request);
 
            $session->start();
        });
    }
 
    /**
     * Get the session implementation from the manager.
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
     * @return void
     */
    protected function terminateMiddleware($request, $response)
    {
        $middlewares = $this->app->shouldSkipMiddleware() ? [] : array_merge(
            $this->gatherRouteMiddleware($request),
            $this->middleware
        );
 
        foreach ($middlewares as $middleware) {
            if (! is_string($middleware)) {
                continue;
            }
 
            [$name] = $this->parseMiddleware($middleware);
 
            $instance = $this->app->make($name);
 
            if (method_exists($instance, 'terminate')) {
                $instance->terminate($request, $response);
            }
        }
    }
 
    /**
     * Gather the route middleware for the given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    protected function gatherRouteMiddleware($request)
    {
        if ($route = $request->route()) {
            return $this->router->gatherRouteMiddleware($route);
        }
 
        return [];
    }
 
    /**
Arguments
  1. Illuminate\Http\Request {
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) { …4}
      #routeResolver: Closure() { …4}
      +attributes: Symfony\Component\HttpFoundation\ParameterBag {}
      +request: Symfony\Component\HttpFoundation\ParameterBag {#1}
      +query: Symfony\Component\HttpFoundation\ParameterBag {#1}
      +server: Symfony\Component\HttpFoundation\ServerBag {}
      +files: Symfony\Component\HttpFoundation\FileBag {}
      +cookies: Symfony\Component\HttpFoundation\ParameterBag {}
      +headers: Symfony\Component\HttpFoundation\HeaderBag {}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
      #requestUri: "/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Illuminate\Session\Store {}
      #locale: null
      #defaultLocale: "en"
      -preferredFormat: null
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Illuminate\Http\Response {}
    
/var/www/html/blissimobiliare/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
     */
    protected function dispatchToRouter()
    {
        return function ($request) {
            $this->app->instance('request', $request);
 
            return $this->router->dispatch($request);
        };
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Http\Response  $response
     * @return void
     */
    public function terminate($request, $response)
    {
        $this->terminateMiddleware($request, $response);
 
        $this->app->terminate();
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Http\Response  $response
     * @return void
     */
    protected function terminateMiddleware($request, $response)
    {
        $middlewares = $this->app->shouldSkipMiddleware() ? [] : array_merge(
            $this->gatherRouteMiddleware($request),
            $this->middleware
        );
 
        foreach ($middlewares as $middleware) {
            if (! is_string($middleware)) {
Arguments
  1. Illuminate\Http\Request {
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) { …4}
      #routeResolver: Closure() { …4}
      +attributes: Symfony\Component\HttpFoundation\ParameterBag {}
      +request: Symfony\Component\HttpFoundation\ParameterBag {#1}
      +query: Symfony\Component\HttpFoundation\ParameterBag {#1}
      +server: Symfony\Component\HttpFoundation\ServerBag {}
      +files: Symfony\Component\HttpFoundation\FileBag {}
      +cookies: Symfony\Component\HttpFoundation\ParameterBag {}
      +headers: Symfony\Component\HttpFoundation\HeaderBag {}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
      #requestUri: "/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Illuminate\Session\Store {}
      #locale: null
      #defaultLocale: "en"
      -preferredFormat: null
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Illuminate\Http\Response {}
    
/var/www/html/blissimobiliare/public/index.php
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/
 
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
 
$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);
 
$response->send();
 
$kernel->terminate($request, $response);
 
Arguments
  1. Illuminate\Http\Request {
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) { …4}
      #routeResolver: Closure() { …4}
      +attributes: Symfony\Component\HttpFoundation\ParameterBag {}
      +request: Symfony\Component\HttpFoundation\ParameterBag {#1}
      +query: Symfony\Component\HttpFoundation\ParameterBag {#1}
      +server: Symfony\Component\HttpFoundation\ServerBag {}
      +files: Symfony\Component\HttpFoundation\FileBag {}
      +cookies: Symfony\Component\HttpFoundation\ParameterBag {}
      +headers: Symfony\Component\HttpFoundation\HeaderBag {}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
      #requestUri: "/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Illuminate\Session\Store {}
      #locale: null
      #defaultLocale: "en"
      -preferredFormat: null
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Illuminate\Http\Response {}
    

Environment & details:

empty
empty
empty
Key Value
lang
"eyJpdiI6IjhcL1JYemlucGVEdFAxZlROTm56VTRnPT0iLCJ2YWx1ZSI6Im9CWHZhQTdPUXdIcm10OUlPTWVIanc9PSIsIm1hYyI6IjE4MmE3ZTE4YzNjYjVhMzhlMGJkMzE5MzMxNDNmNmVjN2EyYTk4NmYzMTY5Njc5M2FkZWFlMThkZDFlYzAwZmUifQ=="
laravel_session
"eyJpdiI6ImJrZjU1UnFLTXk2YjZ6STV4empkcnc9PSIsInZhbHVlIjoiOVFPQkMzXC9UOHlzYjFza0NNQ3lJZUpCVDdlRldxeWRNQVd5MVlWYW5TYUJQbDBBVHNsdzdNaVNJZFFYOTZpTkkiLCJtYWMiOiJlN2EzOGIwODZkMmE1MzA0MzJhMWIxZDFjNzgzODliNTMxMDVlN2U0NTRhZGE1N2Y5YzljNDE3MmE3ZmIwNTVjIn0="
XSRF-TOKEN
"eyJpdiI6Ik5ZblVRNVVkSkI5TFwvNGR1enczTWJ3PT0iLCJ2YWx1ZSI6ImZyT240NXVsOXJZZmF3TUtrSkJFTXpndmNXYVZMbWJWakRIVEpoQUhUZGMxS3lQRVwvNm5ncWExeXFITTBTOW55IiwibWFjIjoiZTljNDQxNTIwNzhiNDcxYThhY2RmYzM5NmE4NWZmYmEwY2Y1NzNmODg2ZjIwNzM5MmZmMjc2NTI0MzhiZmY5NCJ9"
empty
Key Value
REDIRECT_UNIQUE_ID
"aMYc-qwfEagAADxWeWoAAAAB"
REDIRECT_SCRIPT_URL
"/en/blog/news/short-guide-to-bucharest’s-public-transport-taxis-and-car-sharing-services-21"
REDIRECT_SCRIPT_URI
"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest’s-public-transport-taxis-and-car-sharing-services-21"
REDIRECT_STATUS
"200"
UNIQUE_ID
"aMYc-qwfEagAADxWeWoAAAAB"
SCRIPT_URL
"/en/blog/news/short-guide-to-bucharest’s-public-transport-taxis-and-car-sharing-services-21"
SCRIPT_URI
"http://ec2-3-72-183-126.eu-central-1.compute.amazonaws.com/en/blog/news/short-guide-to-bucharest’s-public-transport-taxis-and-car-sharing-services-21"
HTTP_ACCEPT
"*/*"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_COOKIE
"lang=eyJpdiI6IjhcL1JYemlucGVEdFAxZlROTm56VTRnPT0iLCJ2YWx1ZSI6Im9CWHZhQTdPUXdIcm10OUlPTWVIanc9PSIsIm1hYyI6IjE4MmE3ZTE4YzNjYjVhMzhlMGJkMzE5MzMxNDNmNmVjN2EyYTk4NmYzMTY5Njc5M2FkZWFlMThkZDFlYzAwZmUifQ%3D%3D; laravel_session=eyJpdiI6ImJrZjU1UnFLTXk2YjZ6STV4empkcnc9PSIsInZhbHVlIjoiOVFPQkMzXC9UOHlzYjFza0NNQ3lJZUpCVDdlRldxeWRNQVd5MVlWYW5TYUJQbDBBVHNsdzdNaVNJZFFYOTZpTkkiLCJtYWMiOiJlN2EzOGIwODZkMmE1MzA0MzJhMWIxZDFjNzgzODliNTMxMDVlN2U0NTRhZGE1N2Y5YzljNDE3MmE3ZmIwNTVjIn0%3D; XSRF-TOKEN=eyJpdiI6Ik5ZblVRNVVkSkI5TFwvNGR1enczTWJ3PT0iLCJ2YWx1ZSI6ImZyT240NXVsOXJZZmF3TUtrSkJFTXpndmNXYVZMbWJWakRIVEpoQUhUZGMxS3lQRVwvNm5ncWExeXFITTBTOW55IiwibWFjIjoiZTljNDQxNTIwNzhiNDcxYThhY2RmYzM5NmE4NWZmYmEwY2Y1NzNmODg2ZjIwNzM5MmZmMjc2NTI0MzhiZmY5NCJ9"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_HOST
"ec2-3-72-183-126.eu-central-1.compute.amazonaws.com"
HTTP_VIA
"1.1 squid-proxy-5b5d847c96-9mkf2 (squid/6.10)"
HTTP_X_FORWARDED_FOR
"10.3.52.131"
HTTP_CACHE_CONTROL
"max-age=259200"
HTTP_CONNECTION
"keep-alive"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
SERVER_SIGNATURE
""
SERVER_SOFTWARE
"Apache"
SERVER_NAME
"ec2-3-72-183-126.eu-central-1.compute.amazonaws.com"
SERVER_ADDR
"172.31.17.168"
SERVER_PORT
"80"
REMOTE_ADDR
"216.73.216.112"
DOCUMENT_ROOT
"/var/www/html/blissimobiliare/public"
REQUEST_SCHEME
"http"
CONTEXT_PREFIX
""
CONTEXT_DOCUMENT_ROOT
"/var/www/html/blissimobiliare/public"
SERVER_ADMIN
"razvan.iacob@blissimobiliare.ro"
SCRIPT_FILENAME
"/var/www/html/blissimobiliare/public/index.php"
REMOTE_PORT
"27994"
REDIRECT_URL
"/en/blog/news/short-guide-to-bucharest’s-public-transport-taxis-and-car-sharing-services-21"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
""
REQUEST_URI
"/en/blog/news/short-guide-to-bucharest%E2%80%99s-public-transport-taxis-and-car-sharing-services-21"
SCRIPT_NAME
"/index.php"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1757814014.037
REQUEST_TIME
1757814014
APP_ENV
"dev"
APP_KEY
"base64:TUuFX2pGhF01If7DKAC3kZsG4eHfCEDGZOiq1YLX/Fc="
APP_DEBUG
"true"
APP_LOG_LEVEL
"debug"
APP_URL
"https://dev.blissimobiliare.ro"
DB_CONNECTION
"mysql"
DB_HOST
"jaap.c0yqfgjfckuc.eu-central-1.rds.amazonaws.com"
DB_PORT
"3306"
DB_DATABASE
"jaap_dev"
DB_USERNAME
"root"
DB_PASSWORD
"nd3nfm90ms"
BROADCAST_DRIVER
"pusher"
CACHE_DRIVER
"redis"
SESSION_DRIVER
"redis"
QUEUE_DRIVER
"redis"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
SOLR_CORE
"core0"
SOLR_USER
"root"
SOLR_PASS
"jA5GpXhFCc7SeY6x"
MAIL_DRIVER
"smtp"
MAIL_HOST
"smtp.sendgrid.net"
MAIL_PORT
"587"
MAIL_USERNAME
"apikey"
MAIL_PASSWORD
"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"
MAIL_ENCRYPTION
"tls"
SENGRID_API_KEY
"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"
PUSHER_APP_ID
"266734"
PUSHER_APP_KEY
"1da30260f9dbb1a0d9db"
PUSHER_APP_SECRET
"10fbeff65291a4cc067a"
SLACK_WEBHOOK_URL
"https://hooks.slack.com/services/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"
MIXPANEL_TOKEN
"25d54c3d4d562ae8353ed7c7417d488b"
ANALYTICS_VIEW_ID
"132938481"
RECAPTCHA_KEY
"6LecPnoUAAAAAAZgRBMRPEA1V2bqSKNPmTnlN_M_"
RECAPTCHA_SECRET
"6LecPnoUAAAAAD-xVo0bqW7XCeGEHjotj48ShhfK"
S3_KEY
"AKIAIY23DCGM7GE6X26A"
S3_SECRET
"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"
S3_REGION
"eu-central-1"
S3_BUCKET
"bliss-files"
IPAPI_KEY
""
DEBUGBAR_ENABLED
"true"
DB_LOG_QUERIES
"false"
DB_LOG_SLOW_QUERIES
"true"
DB_SLOW_QUERIES_MIN_EXEC_TIME
"100"
DB_LOG_OVERRIDE
"false"
DB_LOG_DIRECTORY
"logs/db"
DB_CONVERT_TIME_TO_SECONDS
"false"
DB_LOG_SEPARATE_ARTISAN
"false"
Key Value
APP_ENV
"dev"
APP_KEY
"base64:TUuFX2pGhF01If7DKAC3kZsG4eHfCEDGZOiq1YLX/Fc="
APP_DEBUG
"true"
APP_LOG_LEVEL
"debug"
APP_URL
"https://dev.blissimobiliare.ro"
DB_CONNECTION
"mysql"
DB_HOST
"jaap.c0yqfgjfckuc.eu-central-1.rds.amazonaws.com"
DB_PORT
"3306"
DB_DATABASE
"jaap_dev"
DB_USERNAME
"root"
DB_PASSWORD
"nd3nfm90ms"
BROADCAST_DRIVER
"pusher"
CACHE_DRIVER
"redis"
SESSION_DRIVER
"redis"
QUEUE_DRIVER
"redis"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
SOLR_CORE
"core0"
SOLR_USER
"root"
SOLR_PASS
"jA5GpXhFCc7SeY6x"
MAIL_DRIVER
"smtp"
MAIL_HOST
"smtp.sendgrid.net"
MAIL_PORT
"587"
MAIL_USERNAME
"apikey"
MAIL_PASSWORD
"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"
MAIL_ENCRYPTION
"tls"
SENGRID_API_KEY
"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"
PUSHER_APP_ID
"266734"
PUSHER_APP_KEY
"1da30260f9dbb1a0d9db"
PUSHER_APP_SECRET
"10fbeff65291a4cc067a"
SLACK_WEBHOOK_URL
"https://hooks.slack.com/services/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"
MIXPANEL_TOKEN
"25d54c3d4d562ae8353ed7c7417d488b"
ANALYTICS_VIEW_ID
"132938481"
RECAPTCHA_KEY
"6LecPnoUAAAAAAZgRBMRPEA1V2bqSKNPmTnlN_M_"
RECAPTCHA_SECRET
"6LecPnoUAAAAAD-xVo0bqW7XCeGEHjotj48ShhfK"
S3_KEY
"AKIAIY23DCGM7GE6X26A"
S3_SECRET
"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"
S3_REGION
"eu-central-1"
S3_BUCKET
"bliss-files"
IPAPI_KEY
""
DEBUGBAR_ENABLED
"true"
DB_LOG_QUERIES
"false"
DB_LOG_SLOW_QUERIES
"true"
DB_SLOW_QUERIES_MIN_EXEC_TIME
"100"
DB_LOG_OVERRIDE
"false"
DB_LOG_DIRECTORY
"logs/db"
DB_CONVERT_TIME_TO_SECONDS
"false"
DB_LOG_SEPARATE_ARTISAN
"false"
0. Whoops\Handler\PrettyPageHandler