JD_Toims - 5:21 am on Nov 16, 2013 (gmt 0)
you typically want to include the fully qualified protocol and hostname in the RewriteRule Target with a redirect unless you have a good reason not to.
There's usually a reason why I code mod_rewrite the way I do -- Nearly 10 years of experience is part of it -- Phranque's note/addition cited above is *right on* and I likely should have mentioned it -- There may not be an issue now on the specific box you're on with the specific settings currently in place, but if you ever move [or for some reason your host changes a setting], you could be in for a "head-scratcher" about why your site broke -- I definitely have my "been there, done that" card lol
RewriteRule ^ubytovanie.php$ /ubytovanie-typ/hotel/? [R=301,L]
Also matches: ubytovanie_php ubytovanie-php ubytovanie/php and any other single character that's not the end of a line following ubytovanie and preceding php, so at the very least the rule should likely be the following, unless you want to redirect ubytovanie[any-single-non-line-ending-character]php, which you may, but idk, because what's presented in your original post is totally different than what I'm seeing now.
Anyway, to match exactly ubytovanie.php you need to escape the . and as phranque pointed out, you should always use a fully-qualified URL on the right side for a redirect, unless you know exactly why you don't need/want to.
RewriteRule ^ubytovanie\.php$ http://www.example.com/ubytovanie-typ/hotel/? [R=301,L]