diff --git a/src/lua/init.cc b/src/lua/init.cc
index 80002b45588778792609cb33846b4a43d1dc4db0..c8420fdb5a64fd996d54ecaa33a4832452ecc2af 100644
--- a/src/lua/init.cc
+++ b/src/lua/init.cc
@@ -525,9 +525,14 @@ tarantool_lua_init()
 	 * packages, Tarantool-specific Lua libs and
 	 * instance-specific Lua scripts.
 	 */
-	tarantool_lua_setpath(L, "path", cfg.script_dir, LUA_LIBPATH,
+
+	char path[PATH_MAX];
+
+	snprintf(path, sizeof(path), "%s/?.lua", cfg.script_dir);
+	tarantool_lua_setpath(L, "path", path, LUA_LIBPATH,
 	                      LUA_SYSPATH, NULL);
-	tarantool_lua_setpath(L, "cpath", LUA_LIBCPATH,
+	snprintf(path, sizeof(path), "%s/?.so", cfg.script_dir);
+	tarantool_lua_setpath(L, "cpath", path, LUA_LIBCPATH,
 	                      LUA_SYSCPATH, NULL);
 
 	/* Load 'ffi' extension and make it inaccessible */