The naming rules for buckets and objects
The naming rules for buckets:
Bucket name must be between 3 and 63 characters long.
Bucket name can consist only lowercase letters, numbers, dots (.) and hyphens (-).
Bucket name must begin and end with a letter or number.
Bucket name must not be an IP address. For example, 192.168.5.4.
Bucket name must not start with the prefix xn--.
Bucket name must not end with the suffix -s3alias.
Avoid using dots (.) in bucket names.
The naming rules for objects:
The object name rules are the same as the file naming in UNIX file system.
Only URL encoding type is supported. The name should be encoded by URL Escape if escape is needed.
The object name must not start with or end with the slash.
The object name is processed by the following rules:
Replace multiple slashes with a single slash.
Eliminate each . path name element (the current directory).
Eliminate each inner .. path name element (the parent directory) along with the non-.. element that precedes it.
Eliminate .. elements that begin a rooted path: that is, replace "/.." by "/" at the beginning of a path.
The returned path ends in a slash only if it is the root "/".
If the result of this process is an empty string, it returns the string ".".
If the object name includes "%", it is treated as encoded name.