游客k7gia3ixuwfsk_个人页

个人头像照片 游客k7gia3ixuwfsk
0
1
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息
正在加载, 请稍后...
暂无更多信息
  • 提交了问题 2018-06-23

    com 因发送垃圾邮件关停,申请开通

  • 回答了问题 2018-06-23

    bucket需要设置私有,怎么能让object被匿名访问

    详细解答可以参考官方帮助文档 OSS访问的安全性 对OSS的HTTP请求可以根据是否携带身份验证信息分为两种请求。一种是带身份验证的请求,一种是不带身份验证的匿名请求。带身份验证的请求有如下两种情况: 请求头部中带Authorization,格式为OSS + AccessKeyId + 签名字符串。 请求的URL中带OSS AccessKeyId和Signature字段。 OSS访问验证流程 匿名请求的访问流程 用户的请求被发送到OSS的HTTP服务器上。 OSS根据URL解析出Bucket和Object。 OSS检查Object是否设置了ACL。 如果没有设置ACL,那么继续4。 如果设置了ACL,则判断Object的ACL是否允许匿名用户访问。 允许则跳到5。 不允许则拒绝请求,请求结束。 OSS判断Bucket的ACL是否允许匿名用户访问。 允许则继续5。 不允许则返回,请求结束。 权限验证通过,返回Object的内容给用户。 带身份验证请求的访问流程 用户的请求被发送到OSS的HTTP服务器上。 OSS根据URL解析出Bucket和Object。 OSS根据请求的OSS的AccessKeyId获取请求者的相关身份信息,进行身份鉴权。 如果未获取成功,则返回,请求结束。 如果获取成功,但请求者不被允许访问此资源,则返回,请求结束。 如果获取成功,但OSS端根据请求的HTTP参数计算的签名和请求发送的签名字符串不匹配,则返回,请求结束。 如果身份鉴权成功,那么继续4。 OSS检查Object是否设置了ACL。 如果Object没有设置ACL,那么继续5。 如果Object设置了ACL,OSS判断Object的ACL是否允许此用户访问。 允许则跳到6。 不允许则拒绝请求,请求结束。 OSS判断Bucket的ACL是否允许此用户访问。 允许则继续6。 不允许则返回,请求结束。 权限验证通过,返回Object的内容给用户。 带身份验证访问OSS的三种方法 使用控制台访问OSS:控制台中对用户隐藏了身份验证的细节,使用控制台访问OSS的用户无需关注细节。 使用SDK访问OSS:OSS提供了多种开发语言的SDK,SDK中实现了签名算法,只需要将AccessKey信息作为参数输入即可。 使用API访问OSS:如果您想用自己喜欢的语言来封装调用RESTful API接口,您需要实现签名算法来计算签名。具体请参见API手册中的在Header中包含签名和在URL中包含签名。 关于AccessKey和身份验证的更多信息请参见访问控制。
    踩1 评论0
  • 提交了问题 2018-05-30

    域名解析怎么指向淘宝店铺

  • 提交了问题 2018-05-19

    开启了跨区域复制后,两个区域的bucket是否都可以操作

  • 提交了问题 2018-04-22

    换成php5.3

  • 回答了问题 2018-04-07

    java查看文件夹

    详细解答可以参考官方帮助文档您可以通过一系列的接口管理存储空间(Bucket)下的文件(Object),包括以下操作: 判断文件是否存在管理文件访问权限管理文件元信息列举文件删除文件拷贝文件解冻归档文件管理符号链接
    踩1 评论0
  • 提交了问题 2018-04-05

    404测试页面

  • 回答了问题 2018-03-05

    有什么ftp客户端推荐吗

    详细解答可以参考官方帮助文档 CuteFTP是一个简单易用的FTP管理器,下面以 CuteFTP 9.0 为例:操作步骤:1.启动CuteFTP软件,新建站点:单击 文件 > 新建 > FTP站点 ,打开站点属性界面,建立FTP站。 标签 :可任意填写 。 主机地址 : 填入主机的IP地址,如:121.41.51.98  。 用户名: 填写主机的用户名(主机FTP用户名) 。 密码:填写主机的密码(输入密码时,框中只有*字,防止被别人看到) 。 登录方法 : 请选择普通 。 2. 在站点属性页面,单击 类型 ,端口填写为 21 。   3. 显示隐藏文件方法:在站点属性页面,单击 操作 选项,单击 筛选器 。勾选 启动筛选 启用服务器端筛选 ,远程筛选器中填写 -a 。   4. 连接远程站点:单击 连接 ,即可连接至主机目录 。界面分为以下部份: 上部:工具栏和菜单 。 左边:本地区域,即本地硬盘,上面两个小框可以选择驱动器和路径 。 右边:远程区域即远端服务器,双击目录图标可进入相关目录;命令区域。 下部:记录区域,从此区域可以看出队列窗口:程序已进行到哪一步。日志窗口:连接的日志。  5.相关操作:连接主机在通过以下操作将网页上传后,使用浏览器访问测试。 从本地区域选定要上传的网页或文件,双击或用鼠标拖至远程区即可完成上传工作。 用鼠标右键中的常用选项对远端文件和目录进行操作,如删除、重命名、移动、属性、等功能。 如果要在主机上新建目录,请在右侧主机端空白地方单击鼠标右键进行操作。  如果问题还未能解决,请联系售后技术支持。 
    踩1 评论0
  • 回答了问题 2018-02-17

    CallBack参数base64编码的Json字串

    详细解答可以参考官方帮助文档 用户只需要在发送给OSS的请求中携带相应的Callback参数,即能实现回调。 现在支持CallBack的API 接口有:PutObject、PostObject、CompleteMultipartUpload。 构造CallBack参数 CallBack参数是由一段经过base64编码的Json字串,用户关键需要指定请求回调的服务器URL(callbackUrl)以及回调的内容(callbackBody)。详细的Json字段如下: 字段 含义 选项 callbackUrl 文件上传成功后OSS向此url发送回调请求,请求方法为POST,body为callbackBody指定的内容。正常情况下,该url需要响应“HTTP/1.1 200 OK”,body必须为JSON格式,响应头Content-Length必须为合法的值,且不超过3MB。 支持同时配置最多5个url,以”;”分割。OSS会依次发送请求直到第一个返回成功为止。 如果没有配置或者值为空则认为没有配置callback。 支持HTTPS地址。 为了保证正确处理中文等情况,callbackUrl需做url编码处理,比如http://example.com/中文.php?key=value&中文名称=中文值 需要编码成 http://example.com/%E4%B8%AD%E6%96%87.php?key=value&%E4%B8%AD%E6%96%87%E5%90%8D%E7%A7%B0=%E4%B8%AD%E6%96%87%E5%80%BC 必选项 callbackHost 发起回调请求时Host头的值,只有在设置了callbackUrl时才有效。 如果没有配置 callbckHost,则会解析callbackUrl中的url并将解析出的host填充到callbackHost中 可选项 callbackBody 发起回调时请求body的值,例如:key=$(key)&etag=$(etag)&my_var=$(x:my_var)。 支持OSS系统变量、自定义变量和常量,支持的系统变量如下表所示 。自定义变量的支持方式在PutObject和CompleteMultipart中是通过callback-var来传递,在PostObject中则是将各个变量通过表单域来传递。 必选项 callbackBodyType 发起回调请求的Content-Type,支持application/x-www-form-urlencoded和application/json,默认为前者。 如果为application/x-www-form-urlencoded,则callbackBody中的变量将会被经过url编码的值替换掉,如果为application/json,则会按照json格式替换其中的变量。 可选项 示例json串如下 { 'callbackUrl':'121.101.166.30/test.php', 'callbackHost':'oss-cn-hangzhou.aliyuncs.com', 'callbackBody':'{\'mimeType\':${mimeType},\'size\':${size}}', 'callbackBodyType':'application/json' } { 'callbackUrl':'121.43.113.8:23456/index.html', 'callbackBody':'bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&imageInfo.height=${imageInfo.height}&imageInfo.width=${imageInfo.width}&imageInfo.format=${imageInfo.format}&my_var=${x:my_var}' } 其中callbackBody中可以设置的系统变量有,其中imageInfo针对于图片格式,如果为非图片格式都为空: 系统变量 含义 bucket bucket object object etag 文件的etag,即返回给用户的etag字段 size object大小,CompleteMultipartUpload时为整个object的大小 mimeType 资源类型,如jpeg图片的资源类型为image/jpeg imageInfo.height 图片高度 imageInfo.width 图片宽度 imageInfo.format 图片格式,如jpg、png等 自定义参数 用户可以通过callback-var参数来配置自定义参数。 自定义参数是一个Key-Value的Map,用户可以配置自己需要的参数到这个Map。在OSS发起POST回调请求的时候,会将这些参数和上一节所述的系统参数一起放在POST请求的body中以方便接收回调方获取。 构造自定义参数的方法和callback参数的方法是一样的,也是以json格式来传递。该json字符串就是一个包含所有自定义参数的Key-Value的Map。 说明 用户自定义参数的Key一定要以x:开头,且必须为小写。否则OSS会返回错误。 假定用户需要设定两个自定义的参数分别为x:var1和x:var2,对应的值分别为value1和value2,那么构造出来的json格式如下: { 'x:var1':'value1', 'x:var2':'value2' } 构造回调请求 构造完成上述的callback和callback-var两个参数之后,一共有三种方式传给OSS。其中callback为必填参数,callback-var为可选参数,如果没有自定义参数的话可以不用添加callback-var字段。这三种方式如下: 在URL中携带参数。 在Header中携带参数。 在POST请求的body中使用表单域来携带参数。 说明 在使用POST请求上传Object的时候只能使用这种方式来指定回调参数。 这三种方式只能同时使用其中一种,否则OSS会返回InvalidArgument错误。 要将参数附加到OSS的请求中,首先要将上文构造的json字符串使用base64编码,然后按照如下的方法附加到OSS的请求中: 如果在URL中携带参数。把callback=[CallBack]或者callback-var=[CallBackVar]作为一个url参数带入请求发送。计算签名CanonicalizedResource时 ,将callback或者callback-var当做一个sub-resource计算在内 如果在Header中携带参数。把x-oss-callback=[CallBack]或者x-oss-callback-var=[CallBackVar]作为一个head带入请求发送。在计算签名CanonicalizedOSSHeaders时,将x-oss-callback-var和x-oss-callback计算在内。如下示例:PUT /test.txt HTTP/1.1 Host: callback-test.oss-test.aliyun-inc.com Accept-ncoding: identity Content-Length: 5 x-oss-callback-var: eyJ4Om15X3ZhciI6ImZvci1jYWxsYmFjay10ZXN0In0= User-Agent: aliyun-sdk-python/0.4.0 (Linux/2.6.32-220.23.2.ali1089.el5.x86_64/x86_64;2.5.4) x-oss-callback: eyJjYWxsYmFja1VybCI6IjEyMS40My4xMTMuODoyMzQ1Ni9pbmRleC5odG1sIiwgICJjYWxsYmFja0JvZHkiOiJidWNrZXQ9JHtidWNrZXR9Jm9iamVjdD0ke29iamVjdH0mZXRhZz0ke2V0YWd9JnNpemU9JHtzaXplfSZtaW1lVHlwZT0ke21pbWVUeXBlfSZpbWFnZUluZm8uaGVpZ2h0PSR7aW1hZ2VJbmZvLmhlaWdodH0maW1hZ2VJbmZvLndpZHRoPSR7aW1hZ2VJbmZvLndpZHRofSZpbWFnZUluZm8uZm9ybWF0PSR7aW1hZ2VJbmZvLmZvcm1hdH0mbXlfdmFyPSR7eDpteV92YXJ9In0= Host: callback-test.oss-test.aliyun-inc.com Expect: 100-Continue Date: Mon, 14 Sep 2015 12:37:27 GMT Content-Type: text/plain Authorization: OSS mlepou3zr4u7b14:5a74vhd4UXpmyuudV14Kaen5cY4= Test 如果需要在POST上传Object的时候附带回调参数会稍微复杂一点,callback参数要使用独立的表单域来附加,如下面的示例:--9431149156168 Content-Disposition: form-data; name='callback' eyJjYWxsYmFja1VybCI6IjEwLjEwMS4xNjYuMzA6ODA4My9jYWxsYmFjay5waHAiLCJjYWxsYmFja0hvc3QiOiIxMC4xMDEuMTY2LjMwIiwiY2FsbGJhY2tCb2R5IjoiZmlsZW5hbWU9JChmaWxlbmFtZSkmdGFibGU9JHt4OnRhYmxlfSIsImNhbGxiYWNrQm9keVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifQ==如果拥有自定义参数的话,不能直接将callback-var参数直接附加到表单域中,每个自定义的参数都需要使用独立的表单域来附加,举个例子,如果用户的自定义参数的json为{ 'x:var1':'value1', 'x:var2':'value2' }那么POST请求的表单域应该如下:--9431149156168 Content-Disposition: form-data; name='callback' eyJjYWxsYmFja1VybCI6IjEwLjEwMS4xNjYuMzA6ODA4My9jYWxsYmFjay5waHAiLCJjYWxsYmFja0hvc3QiOiIxMC4xMDEuMTY2LjMwIiwiY2FsbGJhY2tCb2R5IjoiZmlsZW5hbWU9JChmaWxlbmFtZSkmdGFibGU9JHt4OnRhYmxlfSIsImNhbGxiYWNrQm9keVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifQ== --9431149156168 Content-Disposition: form-data; name='x:var1' value1 --9431149156168 Content-Disposition: form-data; name='x:var2' value2同时可以在policy中添加callback条件(如果不添加callback,则不对该参数做上传验证)如:{ 'expiration': '2014-12-01T12:00:00.000Z', 'conditions': [ {'bucket': 'johnsmith' }, {'callback': 'eyJjYWxsYmFja1VybCI6IjEwLjEwMS4xNjYuMzA6ODA4My9jYWxsYmFjay5waHAiLCJjYWxsYmFja0hvc3QiOiIxMC4xMDEuMTY2LjMwIiwiY2FsbGJhY2tCb2R5IjoiZmlsZW5hbWU9JChmaWxlbmFtZSkiLCJjYWxsYmFja0JvZHlUeXBlIjoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIn0='}, ['starts-with', '$key', 'user/eric/'], ] } 发起回调请求 如果文件上传成功,OSS会根据用户的请求中的callback参数和自定义参数(callback-var参数),将特定内容以POST方式发送给应用服务器。 POST /index.html HTTP/1.0 Host: 121.43.113.8 Connection: close Content-Length: 181 Content-Type: application/x-www-form-urlencoded User-Agent: ehttp-client/0.0.1 bucket=callback-test&object=test.txt&etag=D8E8FCA2DC0F896FD7CB4CB0031BA249&size=5&mimeType=text%2Fplain&imageInfo.height=&imageInfo.width=&imageInfo.format=&x:var1=for-callback-test 返回回调结果 比如应用服务器端返回的回应请求为: HTTP/1.0 200 OK Server: BaseHTTP/0.3 Python/2.7.6 Date: Mon, 14 Sep 2015 12:37:27 GMT Content-Type: application/json Content-Length: 9 {'a':'b'} 返回上传结果 再给客户端的内容为: HTTP/1.1 200 OK Date: Mon, 14 Sep 2015 12:37:27 GMT Content-Type: application/json Content-Length: 9 Connection: keep-alive ETag: 'D8E8FCA2DC0F896FD7CB4CB0031BA249' Server: AliyunOSS x-oss-bucket-version: 1442231779 x-oss-request-id: 55F6BF87207FB30F2640C548 {'a':'b'} 需要注意的是,如果类似CompleteMultipartUpload这样的请求,在返回请求本身body中存在内容(如XMl格式的信息),使用上传回调功能后会覆盖原有的body的内容如{'a':'b'},希望对此处做好判断处理。 回调签名 用户设置callback参数后,OSS将按照用户设置的callbackUrl发送POST回调请求给用户的应用服务器。应用服务器收到回调请求之后,如果希望验证回调请求确实是由OSS发起的话,那么可以通过在回调中带上签名来验证OSS的身份。 生成签名 签名在OSS端发生,采用RSA非对称方式签名,私钥加密的过程为:authorization = base64_encode(rsa_sign(private_key, url_decode(path) + query_string + ‘\n’ + body, md5)) 说明 其中private_key为私钥,只有oss知晓,path为回调请求的资源路径,query_string为查询字符串,body为回调的消息体,所以签名过程由以下几步组成: 获取待签名字符串:资源路径经过url解码后,加上原始的查询字符串,加上一个回车符,加上回调消息体 RSA签名:使用秘钥对待签名字符串进行签名,签名的hash函数为md5 将签名后的结果做base64编码,得到最终的签名,签名放在回调请求的authorization头中 如下例:POST /index.php?id=1&index=2 HTTP/1.0 Host: 121.43.113.8 Connection: close Content-Length: 18 authorization: kKQeGTRccDKyHB3H9vF+xYMSrmhMZjzzl2/kdD1ktNVgbWEfYTQG0G2SU/RaHBovRCE8OkQDjC3uG33esH2txA== Content-Type: application/x-www-form-urlencoded User-Agent: ehttp-client/0.0.1 x-oss-pub-key-url: aHR0cDovL2dvc3NwdWJsaWMuYWxpY2RuLmNvbS9jYWxsYmFja19wdWJfa2V5X3YxLnBlbQ== bucket=yonghu-testpath为/index.php,query_string为?id=1&index=2,body为bucket=yonghu-test,最终签名结果为kKQeGTRccDKyHB3H9vF+xYMSrmhMZjzzl2/kdD1ktNVgbWEfYTQG0G2SU/RaHBovRCE8OkQDjC3uG33esH2txA== 验证签名 验证签名的过程即为签名的逆过程,由应用服务器验证,过程如下:Result = rsa_verify(public_key, md5(url_decode(path) + query_string + ‘\n’ + body), base64_decode(authorization))字段的含义与签名过程中描述相同,其中public_key为公钥, authorization为回调头中的签名,整个验证签名的过程分为以下几步: 回调请求的x-oss-pub-key-url头保存的是公钥的url地址的base64编码,因此需要对其做base64解码后获取到公钥,即public_key = urlopen(base64_decode(x-oss-pub-key-url头的值))这里需要注意,用户需要校验x-oss-pub-key-url头的值必须以http://gosspublic.alicdn.com/或者https://gosspublic.alicdn.com/开头,目的是为了保证这个publickey是由OSS颁发的。 获取base64解码后的签名signature = base64_decode(authorization头的值) 获取待签名字符串,方法与签名一致sign_str = url_decode(path) + query_string + ‘\n’ + body 验证签名result = rsa_verify(public_key, md5(sign_str), signature) 以上例为例: 获取到公钥的url地址,即aHR0cDovL2dvc3NwdWJsaWMuYWxpY2RuLmNvbS9jYWxsYmFja19wdWJfa2V5X3YxLnBlbQ==经过base64解码后得到http://gosspublic.alicdn.com/callback_pub_key_v1.pem 签名头kKQeGTRccDKyHB3H9vF+xYMSrmhMZjzzl2/kdD1ktNVgbWEfYTQG0G2SU/RaHBovRCE8OkQDjC3uG33esH2txA==做base64解码(由于为非打印字符,无法显示出解码后的结果) 获取待签名字符串,即url_decode(“index.php”) + “?id=1&index=2” + “\n” + “bucket=yonghu-test”,并做md5 验证签名 应用服务器示例 以下为一段python示例,演示了一个简单的应用服务器,主要是说明验证签名的方法,此示例需要安装M2Crypto库import httplib import base64 import md5 import urllib2 from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer from M2Crypto import RSA from M2Crypto import BIO def get_local_ip(): try: csock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) csock.connect(('8.8.8.8', 80)) (addr, port) = csock.getsockname() csock.close() return addr except socket.error: return '' class MyHTTPRequestHandler(BaseHTTPRequestHandler): ''' def log_message(self, format, *args): return ''' def do_POST(self): #get public key pub_key_url = '' try: pub_key_url_base64 = self.headers['x-oss-pub-key-url'] pub_key_url = pub_key_url_base64.decode('base64') if not pub_key_url.startswith('http://gosspublic.alicdn.com/') and not pub_key_url.startswith('https://gosspublic.alicdn.com/'): self.send_response(400) self.end_headers() return url_reader = urllib2.urlopen(pub_key_url) #you can cache it pub_key = url_reader.read() except: print 'pub_key_url : ' + pub_key_url print 'Get pub key failed!' self.send_response(400) self.end_headers() return #get authorization authorization_base64 = self.headers['authorization'] authorization = authorization_base64.decode('base64') #get callback body content_length = self.headers['content-length'] callback_body = self.rfile.read(int(content_length)) #compose authorization string auth_str = '' pos = self.path.find('?') if -1 == pos: auth_str = urllib2.unquote(self.path) + '\n' + callback_body else: auth_str = urllib2.unquote(self.path[0:pos]) + self.path[pos:] + '\n' + callback_body print auth_str #verify authorization auth_md5 = md5.new(auth_str).digest() bio = BIO.MemoryBuffer(pub_key) rsa_pub = RSA.load_pub_key_bio(bio) try: result = rsa_pub.verify(auth_md5, authorization, 'md5') except: result = False if not result: print 'Authorization verify failed!' print 'Public key : %s' % (pub_key) print 'Auth string : %s' % (auth_str) self.send_response(400) self.end_headers() return #do something accoding to callback_body #response to OSS resp_body = '{'Status':'OK'}' self.send_response(200) self.send_header('Content-Type', 'application/json') self.send_header('Content-Length', str(len(resp_body))) self.end_headers() self.wfile.write(resp_body) class MyHTTPServer(HTTPServer): def __init__(self, host, port): HTTPServer.__init__(self, (host, port), MyHTTPRequestHandler) if '__main__' == __name__: server_ip = get_local_ip() server_port = 23451 server = MyHTTPServer(server_ip, server_port) server.serve_forever()其它语言实现的应用服务器如下: Java版本: 下载地址:点击这里 运行方法:解压包运行java -jar oss-callback-server-demo.jar 9000(9000就运行的端口,可以自己指定) PHP版本: 下载地址:点击这里 运行方法:部署到Apache环境下,因为PHP本身语言的特点,取一些数据头部会依赖于环境。所以可以参考例子根据所在环境修改。 Python版本: 下载地址:点击这里 运行方法:解压包直接运行python callback_app_server.py,运行该程序需要安装rsa的依赖。 C#版本: 下载地址:点击这里 运行方法:解压后参看 README.md。 Go版本: 下载地址:点击这里 运行方法:解压后参看 README.md。 Go版本: 下载地址:点击这里 运行方法:解压后参看 README.md。 Ruby版本: 下载地址:点击这里 运行方法: ruby aliyun_oss_callback_server.rb 特别须知 如果传入的callback或者callback-var不合法,则会返回400错误,错误码为”InvalidArgument”,不合法的情况包括以下几类: PutObject()和CompleteMultipartUpload()接口中url和header同时传入callback(x-oss-callback)或者callback-var(x-oss-callback-var)参数 callback或者callback-var(PostObject()由于没有callback-var参数,因此没有此限制,下同)参数过长(超过5KB) callback或者callback-var没有经过base64编码 callback或者callback-var经过base64解码后不是合法的json格式 callback参数解析后callbackUrl字段包含的url超过限制(5个),或者url中传入的port不合法,比如{'callbackUrl':'10.101.166.30:test', 'callbackBody':'test'} callback参数解析后callbackBody字段为空 callback参数解析后callbackBodyType字段的值不是”application/x-www-form-urlencoded”或者”application/json” callback参数解析后callbackBody字段中变量的格式不合法,合法的格式为${var} callback-var参数解析后不是预期的json格式,预期的格式应该为{'x:var1':'value1','x:var2':'value2'...} 如果回调失败,则返回203,错误码为”CallbackFailed”,回调失败只是表示OSS没有收到预期的回调响应,不代表应用服务器没有收到回调请求(比如应用服务器返回的内容不是json格式),另外,此时文件已经成功上传到了OSS 应用服务器返回OSS的响应必须带有Content-Length的Header,Body大小不要超过1MB。 Callback支持的地域 Callback目前支持的地域如下:华北 2(北京)、华东 1(杭州)、华北 1(青岛)、华东 2(上海)、上海金融云、华南 1(深圳)、香港、华北 5(呼和浩特)、华北 3(张家口)、中东东部 1(迪拜)、亚太东北 1(日本)、欧洲中部 1(法兰克福)、亚太东南 1(新加坡)、美国东部 1(弗吉尼亚)、美国西部 1(硅谷)、亚太东南 2 (悉尼)以及亚太东南 3(吉隆坡)。
    踩1 评论0
  • 提交了问题 2018-02-10

    申请CDN海外节点权限

  • 提交了问题 2018-01-30

    想绑定阿里云企业邮箱,但是提交购买6元包时,提示该域名已经被占用,询问如何解除,从新绑定

  • 回答了问题 2018-01-20

    购买了一口价域名,在哪里开发票

    详细解答可以参考官方帮助文档 发票申请需基于订单或月度结算。单个订单或月结算单不可拆分开为多张发票;但多个订单或月结算单可以合并,开具一张发票。 填写开票信息 个人类型发票信息抬头默认为个人,您无需填写。企业类型发票信息,需您填写。如果您是企业用户,且未填写开票信息,需登录 阿里云控制台,单击页面上方 费用 进入费用中心。再单击左侧导航栏中 发票管理 > 发票信息管理,进入 发票信息管理 页面填写开票信息。每个阿里云账号的有效发票信息仅限一条,请您慎重填写。 开具类型:根据实际情况,选择开票类型为 企业。发票抬头:企业类型发票信息抬头需填写公司营业执照上的全称。发票类型:选择 增值税普通发票 或 增值税专用发票。请与公司财务人员确认企业的纳税性质。 小规模纳税人及非增值税纳税人,请申请 增值税普通发票。一般纳税人,请申请 增值税专用发票。增值税专用发票,可按照票面的税额抵扣 6% 的增值税。增值税专用发票 有 180 天抵扣期限的限定,从发票开具日算起 180 天之后,发票将无法冲红。 税务登记证号、基本开户银行名称、基本开户账号 等信息按实际情况填写。上传证件复印件。证照合一后注意事项如下: 如您提供的是三证合一或五证合一后的证照,请在税务登记证的相应位置,重复上传合一后的营业执照。如您提供的是三证合一或五证合一后的证照,请核实具体的纳税人识别号信息后,再行填写,以免因税号填写错误造成发票无法使用。如合并后的营业执照上,未加盖增值税一般纳税人资格印章,需要提供一般纳税人资质证明。 一般纳税人资格认证复印件 是指(以下三种任选其一): 一般纳税人资格认证书/通知复印件(主管税务机关颁发给企业,认定其纳税性质的批复文件复印件)。加盖一般增值税纳税人印章的营业执照/税务登记证复印件。企业所在主管国税网站上一般纳税人状态的截图。 申请发票阿里云支持申请增值税电子普通发票与增值税纸质普通发票。增值税电子普通发票与增值税纸质普通发票代码位数不同外,效用一致。电子发票的法律效力、基本用途、基本使用规定等与税务机关监制的增值税普通发票相同。消费者可将电子发票用于维权或报销;受票企业可作为正式的会计凭证入账。 登录 阿里云控制台,单击页面上方 费用 进入费用中心。再单击左侧导航栏中 发票管理 > 发票索取,进入 发票索取 页面。在开票页面,勾选要开票的订单,单击 索取发票 按钮。根据订单类型和购买渠道选择开票信息选择 发票性质 为 电子 或 纸质,核对发票信息和邮寄地址后再单击 提交。说明: 选择申请纸质发票,需填写发票寄送地址和收件人信息。您可以在发票申请页面填写(适用于单次发票寄送);也可以在 [发票寄送地址管理]电子发票 申请后,稍等片刻便可在 发票列表 页面查看。如 状态 栏显示 已开票,即可单击 下载 下载电子发票;或单击 详情 查看发票信息;如果开票信息有误,可单击 退票,然后退换发票。 纸质发票 将自您申请之日起,三个工作日内开具并邮寄。从 2017 年 8 月 25 日起,申请纸质增值税普通发票,如开票金额未满 200 元,快递为到付,需用户自行承担快递费用。 在 发票列表 页面,您也可以单击 导出明细 按钮,导出已开发票明细列表。 其他发票申请相关操作,请参见文挡:设置发票邮寄地址、取消发票申请、变更开票信息、退换发票。 常见问题如果您开具发票时出现以下相关问题,请点击以下文档链接,进入相应文档页面查看原因和解决方法。 开票信息填写相关问题 发票申请操作相关问题 电子发票相关问题 纸质发票邮寄相关问题 发票丢失怎么办? 公司的营业执照名称发生变更怎么办?
    踩1 评论0
  • 回答了问题 2018-01-08

    我想买个顶级域名

    详细解答可以参考官方帮助文档 国际域名 国家域名 .cn 地域域名 国际域名 域名后缀 含义 .com 商业机构,任何人都可以注册 .edu 教育机构 .gov 政府部门 .int 国际组织 .mil 美国军事部门 .net 网络组织,例如因特网服务商和维修商,现在任何人都可以注册 .org 非盈利组织,任何人都可以注册 .biz 商业 .info 网络信息服务组织 .pro 用于会计、律师和医生 .name 用于个人 .museum 用于博物馆 .coop 用于商业合作团体 .aero 用于航空工业 .xxx 用于成人、色情网站 .idv 用于个人 其他域名后缀,您可参考 支持注册的域名后缀。 国家域名 国家域名按国家地区名称的汉语拼音排列。 A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z A 阿尔巴尼亚 .al 阿尔及利亚 .dz 阿富汗 .af 阿根廷 .ar 阿拉伯联合酋长国 .ae 阿鲁巴 .aw 阿曼 .om 阿塞拜疆 .az 埃及 .eg 埃塞俄比亚 .et 爱尔兰 .ie 爱沙尼亚 .ee 安道尔 .ad 安哥拉 .ao 安圭拉 .ai 安提瓜和巴布达 .ag 奥地利 .at 澳大利亚 .au 澳门地区 .mo B 巴巴多斯 .bb 巴布亚新几内亚 .pg 巴哈马 .bs 巴基斯坦 .pk 巴拉圭 .py 巴勒斯坦 .ps 巴林 .bh 巴拿马 .pa 巴西 .br 白俄罗斯 .by 百慕大 .bm 保加利亚 .bg 北马里亚纳群岛 .mp 贝宁 .bj 比利时 .be 冰岛 .is 波多黎各 .pr 波斯尼亚和黑塞哥维那 .ba 波兰 .pl 玻利维亚 .bo 伯利兹 .bz 博茨瓦纳 .bw 不丹 .bt 布基纳法索 .bf 布隆迪 .bi 布维岛 .bv C 朝鲜 .kp 赤道几内亚 .gq D 丹麦 .dk 德国 .de 东帝汶 .tl (新域名); .tp (旧域名,尚未停用) 多哥 .tg 多米尼克 .dm 多米尼加共和国 .do E 俄罗斯 .ru 厄瓜多尔 .ec 厄立特里亚 .er F 法国 .fr 法罗群岛 .fo 法属波利尼西亚 .pf 法属圭亚那 .gf 法属南部领土 .tf 梵蒂冈 .va 菲律宾 .ph 斐济 .fj 芬兰 .fi 佛得角 .cv 福克兰群岛 .fk G 冈比亚 .gm 刚果 .cg 刚果民主共和国 .cd 哥伦比亚 .co 哥斯达黎加 .cr 格恩西岛 .gg 格林纳达 .gd 格陵兰 .gl 格鲁吉亚 .ge 古巴 .cu 瓜德罗普 .gp 关岛 .gu 圭亚那 .gy H 哈萨克斯坦 .kz 海地 .ht 韩国 .kr 荷兰 .nl 荷属安地列斯群岛 .an 赫德和麦克唐纳群岛 .hm 洪都拉斯 .hn J 基里巴斯 .ki 吉布提 .dj 吉尔吉斯斯坦 .kg 几内亚 .gn 几内亚比绍 .gw 加拿大 .ca 加纳 .gh 加蓬 .ga 柬埔寨 .kh 捷克共和国 .cz 津巴布韦 .zw K 喀麦隆 .cm 卡塔尔 .qa 开曼群岛 .ky 科摩罗 .km 科特迪瓦 .ci 科威特 .kw 可可群岛 .cc 克罗地亚 .hr 肯尼亚 .ke 库克群岛 .ck L 拉脱维亚 .lv 莱索托 .ls 老挝 .la 黎巴嫩 .lb 立陶宛 .lt 利比里亚 .lr 利比亚 .ly 列支敦士登 .li 留尼汪 .re 卢森堡 .lu 卢旺达 .rw 罗马尼亚 .ro M 马达加斯加 .mg 马恩岛 .im 马尔代夫 .mv 马耳他 .mt 马拉维 .mw 马来西亚 .my 马里 .ml 马其顿 .mk 马绍尔群岛 .mh 马提尼克岛 .mq 马约特岛 .yt 毛里求斯 .mu 毛里塔尼亚 .mr 美国 .us 美国本土外小岛屿 .um 美属萨摩亚 .as 美属维尔京群岛 .vi 蒙古 .mn 蒙特塞拉特岛 .ms 孟加拉国 .bd 秘鲁 .pe 密克罗尼西亚联邦 .fm 缅甸 .mm 摩尔多瓦 .md 摩洛哥 .ma 摩纳哥 .mc 莫桑比克 .mz 墨西哥 .mx N 瑙鲁 .nr 尼泊尔 .np 尼加拉瓜 .ni 尼日尔 .ne 尼日利亚 .ng 纽埃岛 .nu 挪威 .no 诺福克岛 .nf 纳米比亚 .na 南非 .za 南极洲 .aq 南乔治亚岛和南桑德韦奇岛 .gs O 欧洲联盟 .eu P 帕劳 .pw 皮特凯恩群岛 .pn 葡萄牙 .pt R 日本 .jp 瑞典 .se 瑞士 .ch S 萨尔瓦多 .sv 萨摩亚 .ws 塞尔维亚和黑山 .yu 塞拉利昂 .sl 塞内加尔 .sn 塞浦路斯 .cy 塞舌尔 .sc 沙特阿拉伯 .sa 圣诞岛 .cx 圣多美和普林西比 .st 圣赫勒拿岛 .sh 圣基茨和尼维斯 .kn 圣卢西亚 .lc 圣马力诺 .sm 圣皮埃尔岛及密客隆岛 .pm 圣文森特和格林纳丁斯 .vc 斯里兰卡 .lk 斯洛伐克 .sk 斯洛文尼亚 .si 斯瓦尔巴岛和扬马延岛 .sj 斯威士兰 .sz 苏丹 .sd 苏里南 .sr 所罗门群岛 .sb 索马里 .so T 塔吉克斯坦 .tj 台湾 .tw 泰国 .th 坦桑尼亚 .tz 汤加 .to 特克斯和凯科斯群岛 .tc 特立尼达和多巴哥 .tt 突尼斯 .tn 图瓦卢 .tv 土耳其 .tr 土库曼斯坦 .tm 托克劳 .tk W 瓦利斯和富图纳群岛 .wf 瓦努阿图 .vu 危地马拉 .gt 委内瑞拉 .ve 文莱 .bn 乌干达 .ug 乌克兰 .ua 乌拉圭 .uy 乌兹别克斯坦 .uz X 西班牙 .es 西撒哈拉 .eh 希腊 .gr 香港地区 .hk 新加坡 .sg 新喀里多尼亚 .nc 新西兰 .nz 匈牙利 .hu 叙利亚 .sy Y 牙买加 .jm 亚美尼亚 .am 亚森松岛 .ac 也门 .ye 伊拉克 .iq 伊朗 .ir 以色列 .il 意大利 .it 印度 .in 印度尼西亚 .id 英国 .uk 英属维尔京群岛 .vg 英属印度洋地区 .io 约旦 .jo 越南 .vn Z 赞比亚 .zm 泽西岛 .je 乍得 .td 直布罗陀 .gi 智利 .cl 中非共和国 .cf 中国 .cn 国家域名 (按国家、地区的域名顺序排列) A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z A .ac 亚森松岛 .ad 安道尔 .ae 阿拉伯联合酋长国 .af 阿富汗 .ag 安提瓜和巴布达 .ai 安圭拉 .al 阿尔巴尼亚 .am 亚美尼亚 .an 荷属安地列斯群岛 .ao 安哥拉 .aq 南极洲 .ar 阿根廷 .as 美属萨摩亚 .at 奥地利 .au 澳大利亚 .aw 阿鲁巴 .az 阿塞拜疆 B .ba 波斯尼亚和黑塞哥维那 .bb 巴巴多斯 .bd 孟加拉国 .be 比利时 .bf 布基纳法索 .bg 保加利亚 .bh 巴林 .bi 布隆迪 .bj 贝宁 .bm 百慕大 .bn 文莱 .bo 玻利维亚 .br 巴西 .bs 巴哈马 .bt 不丹 .bv 布维岛 .bw 博茨瓦纳 .by 白俄罗斯 .bz 伯利兹 C .ca 加拿大 .cc 可可群岛 .cd 刚果民主共和国 .cf 中非共和国 .cg 刚果 .ch 瑞士 .ci 科特迪瓦 .ck 库克群岛 .cl 智利 .cm 喀麦隆 .cn 中国大陆 .co 哥伦比亚 .cr 哥斯达黎加 .cu 古巴 .cv 佛得角 .cx 圣诞岛 .cy 塞浦路斯 .cz 捷克共和国 D .de 德国 .dj 吉布提 .dk 丹麦 .dm 多米尼克 .do 多米尼加共和国 .dz 阿尔及利亚 E .ec 厄瓜多尔 .ee 爱沙尼亚 .eg 埃及 .eh 西撒哈拉 .er 厄立特里亚 .es 西班牙 .et 埃塞俄比亚 .eu 欧洲联盟 F .fi 芬兰 .fj 斐济 .fk 福克兰群岛 .fm 密克罗尼西亚联邦 .fo 法罗群岛 .fr 法国 G .ga 加蓬 .gd 格林纳达 .ge 格鲁吉亚 .gf 法属圭亚那 .gg 格恩西岛 .gh 加纳 .gi 直布罗陀 .gl 格陵兰 .gm 冈比亚 .gn 几内亚 .gp 瓜德罗普 .gq 赤道几内亚 .gr 希腊 .gs 南乔治亚岛和南桑德韦奇岛 .gt 危地马拉 .gu 关岛 .gw 几内亚比绍 .gy 圭亚那 H .hk 香港 .hm 赫德和麦克唐纳群岛 .hn 洪都拉斯 .hr 克罗地亚 .ht 海地 .hu 匈牙利 I .id 印度尼西亚 .ie 爱尔兰 .il 以色列 .im 马恩岛 .in 印度 .io 英属印度洋地区 .iq 伊拉克 .ir 伊朗 .is 冰岛 .it 意大利 J .je 泽西岛 .jm 牙买加 .jo 约旦 .jp 日本 K .ke 肯尼亚 .kg 吉尔吉斯斯坦 .kh 柬埔寨 .ki 基里巴斯 .km 科摩罗 .kn 圣基茨和尼维斯 .kp 朝鲜 .kr 韩国 .kw 科威特 .ky 开曼群岛 .kz 哈萨克斯坦 L .la 老挝 .lb 黎巴嫩 .lc 圣卢西亚 .li 列支敦士登 .lk 斯里兰卡 .lr 利比里亚 .ls 莱索托 .lt 立陶宛 .lu 卢森堡 .lv 拉脱维亚 .ly 利比亚 M .ma 摩洛哥 .mc 摩纳哥 .md 摩尔多瓦 .mg 马达加斯加 .mh 马绍尔群岛 .mk 马其顿 .ml 马里 .mm 缅甸 .mn 蒙古 .mo 中国澳门 .mp 北马里亚纳群岛 .mq 马提尼克岛 .mr 毛里塔尼亚 .ms 蒙特塞拉特岛 .mt 马耳他 .mu 毛里求斯 .mv 马尔代夫 .mw 马拉维 .mx 墨西哥 .my 马来西亚 .mz 莫桑比克 N .na 纳米比亚 .nc 新喀里多尼亚 .ne 尼日尔 .nf 诺福克岛 .ng 尼日利亚 .ni 尼加拉瓜 .nl 荷兰 .no 挪威 .np 尼泊尔 .nr 瑙鲁 .nu 纽埃岛 .nz 新西兰 O .om 阿曼 P .pa 巴拿马 .pe 秘鲁 .pf 法属波利尼西亚 .pg 巴布亚新几内亚 .ph 菲律宾 .pk 巴基斯坦 .pl 波兰 .pm 圣皮埃尔岛及密客隆岛 .pn 皮特凯恩群岛 .pr 波多黎各 .ps 巴勒斯坦 .pt 葡萄牙 .pw 帕劳 .py 巴拉圭 Q .qa 卡塔尔 R .re 留尼汪 .ro 罗马尼亚 .ru 俄罗斯 .rw 卢旺达 S .sa 沙特阿拉伯 .sb 所罗门群岛 .sc 塞舌尔 .sd 苏丹 .se 瑞典 .sg 新加坡 .sh 圣赫勒拿岛 .si 斯洛文尼亚 .sj 斯瓦尔巴岛和扬马延岛 .sk 斯洛伐克 .sl 塞拉利昂 .sm 圣马力诺 .sn 塞内加尔 .so 索马里 .sr 苏里南 .st 圣多美和普林西比 .sv 萨尔瓦多 .sy 叙利亚 .sz 斯威士兰 T .tc 特克斯和凯科斯群岛 .td 乍得 .tf 法属南部领土 .tg 多哥 .th 泰国 .tj 塔吉克斯坦 .tk 托克劳 .tl 东帝汶(新域名) .tm 土库曼斯坦 .tn 突尼斯 .to 汤加 .tp 东帝汶(旧域名,尚未停用) .tr 土耳其 .tt 特立尼达和多巴哥 .tv 图瓦卢 .tw 台湾 .tz 坦桑尼亚 U .ua 乌克兰 .ug 乌干达 .uk 英国 .um 美国本土外小岛屿 .us 美国 .uy 乌拉圭 .uz 乌兹别克斯坦 V .va 梵蒂冈 .vc 圣文森特和格林纳丁斯 .ve 委内瑞拉 .vg 英属维尔京群岛 .vi 美属维尔京群岛 .vn 越南 .vu 瓦努阿图 W .wf 瓦利斯和富图纳群岛 .ws 萨摩亚 Y .ye 也门 .yt 马约特岛 .yu 塞尔维亚和黑山 .yr 耶纽 Z .za 南非 .zm 赞比亚 .zw 津巴布韦 .cn 地域域名 .cn 地域域名是保留下来的带有城市、国家后缀的域名。个人无法注册。 .ac.cn 科学院系统 .ah.cn 安徽省 .bj.cn 北京市 .com.cn 商业系统 .cq.cn 重庆市 .fj.cn 福建省 .gd.cn 广东省 .gov.cn 政府部门 .gs.cn 甘肃省 .gx.cn 广西自治区 .gz.cn 贵州省 .ha.cn 河南省 .hb.cn 湖北省 .he.cn 河北省 .hi.cn 海南省 .hk.cn 香港 .hl.cn 黑龙江省 .hn.cn 湖南省 .jl.cn 吉林省 .js.cn 江苏省 .jx.cn 江西省 .ln.cn 辽宁省 .mo.cn 澳门 .net.cn 邮电部门 .nm.cn 内蒙古自治区 .nx.cn 宁夏回族自治区 .org.cn 社会组织
    踩1 评论0
  • 回答了问题 2018-01-03

    安全组在哪里查看

    详细解答可以参考官方帮助文档 您可以查询安全组规则。操作如下: 登录 云服务器管理控制台。 单击左侧导航中的 安全组。 选择地域。 选中一个安全组,单击 配置规则。 经典网络和专有网络的内容不同: 如果是专有网络安全组,能看到入方向、出方向两个安全组规则; 如果是经典网络安全组,能看到公网入方向、公网出方向、内网入方向、内网出方向四个安全组规则。 单击每个分类标签,可以查看各自分类的安全组规则。
    踩1 评论0
  • 提交了问题 2017-12-31

    CDN支持服务器上什么协议的访问?

  • 回答了问题 2017-12-31

    我要增加带宽

    详细解答可以参考官方帮助文档温馨提醒: 使用独享带宽的主机可以增加带宽,如果您是共享型主机,建议您先主机升级到独享后在增加带宽。 主机离到期日不足一个月,请先进行主机续费,再增加主机带宽 。增加带宽流程:1. 登录 云虚拟主机管理页面 。2. 选择对应主机操作 > 更多操作 > 增加带宽 。3. 填写 增加带宽 大小 和 购买时长(增加带宽价格请以实际提交订单为准)。4. 单击 下一步 。5. 页面提示增加带宽大小及价格,请确定增加带宽详情 。6. 单击 提交 生成订单。7. 选择支付方式。8. 单击  网上银行在线支付或线下支付  查看付款方式。9. 支付结算成功完成购买。10. 可登录 主机管理控制台 > 主机信息 > 配置信息,中查看增加后主机带宽大小 其他付款方式请参考《如何进行线下汇款》索取发票请参考《申请发票流程》 如问题还未解决,请联系售后技术支持。
    踩1 评论0
正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息