• 关于 检测utf-编码 的搜索结果

回答

检测一下服务器的编码,我怎么感觉不像是utf-8,而是posix(locale显示为C),否则应该显示为乱码,而不是问号。使用这个命令看一下: locale,检测一下变量,是不是UTF-8的字符编码。如果是的话,把你的终端字符集也改成utf-8编码,再ls列一下其次,各大linux/unix发行版默认编码UTF-8,文件名和文本编码尽量全用UTF-8编码,不是的话转一下。最后,如果访问的HTTP URI中有中文编码的话,应该在tomcat的server.xml配置文件中的connector配置段加上URIEncoding="UTF-8",来防止传递的URL中中文字符出现乱码。

落地花开啦 2019-12-02 02:30:53 0 浏览量 回答数 0

回答

MySQL的utf8许可仅允许使用UTF-8中的3个字节表示的Unicode字符。在这里,您需要一个需要4个字节的字符:\ xF0 \ x90 \ x8D \ x83(U + 10343 GOTHIC LETTER SAUIL)。 如果您使用MySQL 5.5或更高版本,则可以将列编码从更改utf8为utf8mb4。此编码允许存储在UTF-8中占用4个字节的字符。 您可能还需要服务器属性设置character_set_server到utf8mb4MySQL的配置文件中 似乎Connector / J缺省为3字节Unicode,否则: 例如,要将4字节UTF-8字符集用于Connector / J,请使用配置MySQL服务器character_set_server=utf8mb4,并保留characterEncodingConnector / J连接字符串。然后,Connector / J将自动检测UTF-8设置。MySQL的utf8许可仅允许使用UTF-8中的3个字节表示的Unicode字符。在这里,您需要一个需要4个字节的字符:\ xF0 \ x90 \ x8D \ x83(U + 10343 GOTHIC LETTER SAUIL)。 如果您使用MySQL 5.5或更高版本,则可以将列编码从更改utf8为utf8mb4。此编码允许存储在UTF-8中占用4个字节的字符。 您可能还需要服务器属性设置character_set_server到utf8mb4MySQL的配置文件中 似乎Connector / J缺省为3字节Unicode,否则: 例如,要将4字节UTF-8字符集用于Connector / J,请使用配置MySQL服务器character_set_server=utf8mb4,并保留characterEncodingConnector / J连接字符串。然后,Connector / J将自动检测UTF-8设置。MySQL的utf8许可仅允许使用UTF-8中的3个字节表示的Unicode字符。在这里,您需要一个需要4个字节的字符:\ xF0 \ x90 \ x8D \ x83(U + 10343 GOTHIC LETTER SAUIL)。 如果您使用MySQL 5.5或更高版本,则可以将列编码从更改utf8为utf8mb4。此编码允许存储在UTF-8中占用4个字节的字符。 您可能还需要服务器属性设置character_set_server到utf8mb4MySQL的配置文件中 似乎Connector / J缺省为3字节Unicode,否则: 例如,要将4字节UTF-8字符集用于Connector / J,请使用配置MySQL服务器character_set_server=utf8mb4,并保留characterEncodingConnector / J连接字符串。然后,Connector / J将自动检测UTF-8设置。源:stack overflow

保持可爱mmm 2020-05-10 19:15:37 0 浏览量 回答数 0

问题

如何在Latin1编码的列中检测UTF-8字符-MySQL?mysql

保持可爱mmm 2020-05-17 21:08:57 2 浏览量 回答数 1

新用户福利专场,云服务器ECS低至102元/年

新用户专场,1核2G 102元/年起,2核4G 699.8元/年起

回答

1 用户输入的URL在前端用jQuery进行简单的URL合法性检查后,异步提交给PHP2 PHP检测URL是否合法,用Curl进行获取URL的内容3 PHP把的获取Title或出错信息,返回给前端jQuery.<?php //文件编码为UTF-8(无BOM) error_reporting(E_ALL || E_STRICT); $url = 'http://q我q.com'; //首先判断用户输入的URL是否合法 if (!filter_var($url, FILTER_VALIDATE_URL)) { die('你输入的不是一个正常的URL.'); } $ch = curl_init(); curl_setopt_array($ch, array( CURLOPT_HEADER => false, CURLOPT_URL => $url, //考虑到有些网站是301跳转的. CURLOPT_FOLLOWLOCATION => true, //连接的超时时间设置为5秒 CURLOPT_CONNECTTIMEOUT => 5, //响应超时时间为5秒 CURLOPT_TIMEOUT => 5, CURLOPT_VERBOSE => false, CURLOPT_AUTOREFERER => true, //接收所有的编码 CURLOPT_ENCODING => '', //返回页面内容 CURLOPT_RETURNTRANSFER => true, )); $response = curl_exec($ch); //检测网页的编码,把非UTF-8编码的页面,统一转换为UTF-8处理. if ('UTF-8' !== ($encoding = mb_detect_encoding($response, array('UTF-8', 'CP936', 'ASCII')))) { $response = mb_convert_encoding($response, 'UTF-8', $encoding); } //匹配一下title $title = '没有成功获取到标题'; if (preg_match('#<title>(.*)</title>#isU', $response, $match)) { $title = $match[1]; } echo $title;

落地花开啦 2019-12-02 02:53:30 0 浏览量 回答数 0

回答

这个很难吧?! 你说数字1,是属于什么字符集?一切皆有可能。###### 你最好自己肉眼读一下服务器这段文本,将它放在浏览器里面读,用不同的编码试试,哪个显示正常,就是哪种编码了。###### 引用来自#3楼“张敏峰”的帖子 你最好自己肉眼读一下服务器这段文本,将它放在浏览器里面读,用不同的编码试试,哪个显示正常,就是哪种编码了。 这样不行。让PHP自动判断编码格式,都转换成UTF-8的。搜到一个帖子,是通过判断文件头来判断编码,但是我觉得应该有更简单的方法。mb_convert_encoding($text, 'UTF-8','GB2312,UTF-8');这个函数基本实现了功能,但是有些编码如Unicode就会乱码 (用记事本保存时可以选,不知道是不是一种编码)。应该把尽量多的编码放到函数第三个参数上就可以吧。###### 不知道文件头信息里面会不会有文件的编码方式的标记。###### 引用来自#5楼“凹凸曼”的帖子 不知道文件头信息里面会不会有文件的编码方式的标记。 utf-8好像有固定的文件头,别的不知道。###### 回复的时候怎么出来个  {"id":10311,"post":256271957,"user":8876,"post_count":5}   红薯看一下问题。###### mb_convert_encoding用编码列表,一般ascii打头,GB2312、GBK、UTF-8基本够用了。###### 编码的顺序是很有讲究的,如果编码是ascii的就不要转换###### 引用来自#9楼“dj”的帖子 编码的顺序是很有讲究的,如果编码是ascii的就不要转换   也就是用 mb_convert_encoding($text, 'UTF-8','ascii,GB2312,gbk,UTF-8');  ? 第三个参数是文本的原编码,检测到与第二个参数相同时就不进行转码了?

kun坤 2020-06-07 17:14:14 0 浏览量 回答数 0

回答

通信协议 支持HTTP/HTTPS协议。 请求方法 所有接口都支持POST/GET方法。 字符编码 所有接口的请求参数和返回结果编码方式都是UTF-8。 API请求结构 类型 描述 备注 API接入地址 具体API接口地址。 示例:http(https)://green.cn-shanghai.aliyuncs.com 公共参数 每个接口都包含有的通用参数。 详见公共参数说明。 接口自定义参数 每个接口特有的参数。 详见每个API接口定义。 API接入地址 内容检测API配置管理服务(自定义图库、自定义文本库和OSS检测内容管理)的接入地址为: http(s)://green.cn-shanghai.aliyuncs.com 注意 只支持以上地址。中国所有地域都请使用以上地址来调用服务,我们会自动同步到每个地域。 公共参数 名称 类型 是否必需 描述 Action String 是 要执行的操作,即API接口名称。具体取值请参见 API概览。 AccessKeyId String 是 访问密钥 ID。AccessKey用于调用 API。 Signature String 是 您的签名。具体取值请参见签名机制。 SignatureMethod String 是 签名方式。取值:HMAC-SHA1。 SignatureVersion String 是 签名算法版本。取值:1.0。 SignatureNonce String 是 签名唯一随机数。用于防止网络重放攻击,建议您每一次请求都使用不同的随机数。 Timestamp String 是 请求的时间戳。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。示例:2018-01-01T12:00:00Z,表示北京时间2018年01月01日20点00分00秒。 Version String 是 API的版本号,格式为YYYY-MM-DD。取值:2017-08-23。 Format String 否 返回参数的语言类型。取值范围: json xml(默认) 接口自定义参数 请在API 概览中,单击每个API进行查阅。 签名机制 对于每一次HTTP或者HTTPS协议请求,我们会根据访问中的签名信息验证访问请求者身份。具体由使用AccessKeyID和AccessKeySecret对称加密验证实现。 AccessKey相当于用户密码,AccessKey用于调用API,而用户密码用于登录阿里云控制台 。其中AccessKeyID是访问者身份,AccessKeySecret是加密签名字符串和服务器端验证签名字符串的密钥,必须严格保密谨防泄露。 构造规范化请求字符串。 排序参数。排序规则以首字母顺序排序,排序参数包括公共参数和接口自定义参数,不包括公共请求参数中的Signature参数。 说明 当使用GET方法提交请求时,这些参数就是请求URL中的参数部分,即URL中?之后由&连接的部分。 编码参数。使用UTF-8字符集按照RFC3986规则编码请求参数和参数取值,编码规则如下: 字符A~Z、a~z、0~9以及字符-、_、.、~不编码。 其它字符编码成%XY的格式;其中XY是字符对应ASCII码的16进制。示例:半角双引号(")对应 %22。 扩展的UTF-8字符,编码成%XY%ZA…的格式。 空格( )编码成%20,而不是加号(+)。 该编码方式与application/x-www-form-urlencodedMIME格式编码算法相似,但又有所不同。 如果您使用的是Java标准库中的java.net.URLEncoder,可以先用标准库中percentEncode编码,随后将编码后的字符中加号(+)替换为 %20、星号(*)替换为 %2A、%7E 替换为波浪号(~),即可得到上述规则描述的编码字符串。 private static final String ENCODING = "UTF-8"; private static String percentEncode(String value) throws UnsupportedEncodingException { return value != null ? URLEncoder.encode(value, ENCODING).replace("+", "%20").replace("*", "%2A").replace("%7E", "~") : null; } 使用等号(=)连接编码后的请求参数和参数取值。 使用与号(&)连接编码后的请求参数,注意参数排序与步骤ⅰ一致。 现在,您得到了规范化请求字符串(CanonicalizedQueryString),其结构遵循API请求结构。 构造签名字符串。 构造待签名字符串StringToSign。您可以同样使用percentEncode处理上一步构造的规范化请求字符串,规则如下: StringToSign= HTTPMethod + "&" + //HTTPMethod:发送请求的 HTTP 方法,例如 GET。 percentEncode("/") + "&" + //percentEncode("/"):字符(/)UTF-8 编码得到的值,即 %2F。 percentEncode(CanonicalizedQueryString) //您的规范化请求字符串。 按照RFC2104 的定义,计算待签名字符串StringToSign的HMAC-SHA1值。示例使用的是Java Base64编码方法。 Signature = Base64( HMAC-SHA1( AccessSecret, UTF-8-Encoding-Of(StringToSign) ) ) 说明 计算签名时,RFC2104规定的Key值是您的AccessKeySecret并加上与号(&),其ASCII值为38。 添加根据RFC3986规则编码后的参数Signature到规范化请求字符串URL中。 代码示例 示例一:参数拼接法 以调用DescribeKeywordLib查询词库为例。假设您获得了AccessKeyID=testid以及AccessKeySecret=testsecret,签名流程如下所示: 构造规范化请求字符串。 AccessKeyId=testid&Action=DescribeKeywordLib&Format=XML&SignatureMethod=HMAC-SHA1&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf&SignatureVersion=1.0&Timestamp=2016-02-23T12:46:24Z&Version=2014-05-26&ServiceModule=open_api 构造待签名字符串StringToSign。 GET&%2F&AccessKeyId%3Dtestid%26Action%3DDescribeKeywordLib%26Format%3DXML%26SignatureMethod%3DHMAC-SHA1%26SignatureNonce%3D3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf%26SignatureVersion%3D1.0%26Timestamp%3D2016-02-23T12%253A46%253A24Z%26Version%3D2014-05-26%26ServiceModule%3Dopen_api 计算签名值。因为AccessKeySecret=testsecret,用于计算的Key为 testsecret&,计算得到的签名值为OLeaidS1JvxuMvnyHOwuJ+uX5qY=。示例使用的是Java Base64编码方法。 Signature = Base64( HMAC-SHA1( AccessSecret, UTF-8-Encoding-Of(StringToSign) ) ) 添加RFC3986规则编码后的Signature=OLeaidS1JvxuMvnyHOwuJ%2BuX5qY%3D到步骤ⅰ的URL中。 http://green.cn-shanghai.aliyuncs.com/?SignatureVersion=1.0&Action=DescribeKeywordLib&Format=XML&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf&Version=2014-05-26&AccessKeyId=testid&Signature=OLeaidS1JvxuMvnyHOwuJ%2BuX5qY%3D&SignatureMethod=HMAC-SHA1&Timestamp=2016-02-23T12%253A46%253A24Z&ServiceModule=open_api 通过以上URL,您可以使用浏览器、curl或者wget等工具发起HTTP请求调用DescribeKeywordLib,查看自定义关键词库列表。 示例二:编程语言法 依然以调用DescribeKeywordLib查询词库为例。假设您获得了AccessKeyID=testid以及AccessKeySecret=testsecret,并且假定所有请求参数放在一个JavaMap<String, String>对象里。 预定义编码方法。 private static final String ENCODING = "UTF-8"; private static String percentEncode(String value) throws UnsupportedEncodingException { return value != null ? URLEncoder.encode(value, ENCODING).replace("+", "%20").replace("*", "%2A").replace("%7E", "~") : null; } 预定义编码时间格式Timestamp。参数Timestamp必须符合ISO8601规范,并需要使用UTC时间,时区为+0。 private static final String ISO8601_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'"; private static String formatIso8601Date(Date date) { SimpleDateFormat df = new SimpleDateFormat(ISO8601_DATE_FORMAT); df.setTimeZone(new SimpleTimeZone(0, "GMT")); return df.format(date); } 构造请求字符串。 final String HTTP_METHOD = "GET"; Map parameters = new HashMap(); // 输入请求参数 parameters.put("Action", "DescribeKeywordLib"); parameters.put("Version", "2017-08-23"); parameters.put("AccessKeyId", "testid"); parameters.put("Timestamp", formatIso8601Date(new Date())); parameters.put("SignatureMethod", "HMAC-SHA1"); parameters.put("SignatureVersion", "1.0"); parameters.put("SignatureNonce", UUID.randomUUID().toString()); parameters.put("Format", "XML"); parameters.put("ServiceModule", "open_api"); // 排序请求参数 String[] sortedKeys = parameters.keySet().toArray(new String[]{}); Arrays.sort(sortedKeys); final String SEPARATOR = "&"; // 构造 stringToSign 字符串 StringBuilder stringToSign = new StringBuilder(); stringToSign.append(HTTP_METHOD).append(SEPARATOR); stringToSign.append(percentEncode("/")).append(SEPARATOR); StringBuilder canonicalizedQueryString = new StringBuilder(); for(String key : sortedKeys) { // 这里注意编码 key 和 value canonicalizedQueryString.append("&") .append(percentEncode(key)).append("=") .append(percentEncode(parameters.get(key))); } // 这里注意编码 canonicalizedQueryString stringToSign.append(percentEncode( canonicalizedQueryString.toString().substring(1))); 签名。因为 AccessKeySecret=testsecret,所以用于计算HMAC的Key为testsecret&,计算得到的签名值为OLeaidS1JvxuMvnyHOwuJ%2BuX5qY%3D。 // 以下是一段计算签名的示例代码 final String ALGORITHM = "HmacSHA1"; final String ENCODING = "UTF-8"; key = "testsecret&"; Mac mac = Mac.getInstance(ALGORITHM); mac.init(new SecretKeySpec(key.getBytes(ENCODING), ALGORITHM)); byte[] signData = mac.doFinal(stringToSign.getBytes(ENCODING)); String signature = new String(Base64.encodeBase64(signData)); 增加签名参数后,按照RFC3986规则编码后的URL如下所示: http://green.cn-shanghai.aliyuncs.com/?SignatureVersion=1.0&Action=DescribeKeywordLib&Format=XML&SignatureNonce=3ee8c1b8-83d3-44af-a94f-4e0ad82fd6cf&Version=2014-05-26&AccessKeyId=testid&Signature=OLeaidS1JvxuMvnyHOwuJ%2BuX5qY%3D&SignatureMethod=HMAC-SHA1&Timestamp=2016-02-23T12%253A46%253A24Z 使用浏览器、curl或者wget等工具发送HTTP请求,获取返回结果。 API返回结果 请在API概览中单击每个API进行查阅。

保持可爱mmm 2020-03-27 19:04:14 0 浏览量 回答数 0

回答

骚年啊,资源文件名不要有中文啊,这可是常识啊 而且文件名不要有空格,不然容易悲剧 ######回复 @汪兴 : 有一个办法规避,就是上传的文件名更名为hash,实际上很多网站都这么做的,最终在页面上的url可以看到就是一个hash文件名,实际的文件名通过别的方式保存,下载的时候将文件改名即可。######没办法啊,资源文件是用户上传的,word文档这种肯定是有中文的呀###### 非要解决这些中文乱码问题的话,需要考虑一下服务器编码问题了。 检测一下服务器的编码,我怎么感觉不像是utf-8,而是posix(locale显示为C),否则应该显示为乱码,而不是问号。使用这个命令看一下: locale,检测一下变量,是不是UTF-8的字符编码。如果是的话,把你的终端字符集也改成utf-8编码,再ls列一下 其次,各大linux/unix发行版默认编码UTF-8,文件名和文本编码尽量全用UTF-8编码,不是的话转一下。 最后,如果访问的HTTP URI中有中文编码的话,应该在tomcat的server.xml配置文件中的connector配置段加上URIEncoding="UTF-8",来防止传递的URL中中文字符出现乱码。 差不多解决方案就是这样。由于中文编码遇到的问题会比较多,所以不建议文件名出现中文,更不要有路径中出现空格,不然会带来很多处理上的麻烦。 ######回复 @汪兴 : 是在没搞明白你说的是哪里乱码了,你又说程序运行没乱码,又说程序显示不对,有乱码。到底有没有乱码?有没有截图?有没有运行过程?提问信息要完整,要有相关的截图或日志,要有你的猜想以及做出的尝试。######我把locale改了,本来是C,改成了UTF-8,但这种情况只是ssh显示正常了,但是程序里还是不对,TOMCAT里UFT-8也加上了,Dfile也加上了,都没没用,但是java程序运行就 没乱码,很郁闷啊######不作死就不会死######FreeNAS可以安装Tomcat么?######可以的

kun坤 2020-06-08 11:17:23 0 浏览量 回答数 0

回答

以 Windows 为例,通常来说 文件编码有 GBK UTF8-Without-BOM UTF8-BOM, UTF16LE UTF16BE ,实际上你只要解析这些编码即可,通过读取文件的 BOM 也就是前3个或者4个字符,可以判断是否为 UTF16 或者是 UTF8 BOM,对于 GBK 或者 UTF8 without BOM 就不行了,https://github.com/BYVoid/uchardet 这是 Byvoid 从 Mozilla 提取出来的 检测 文件编码的,除掉主文件 其他文件可以用于 Windows,检测出编码后,比如 Windows 可以使用 MultiByteToWideChar 转成 UTF16 然后输出。只是过程比较繁琐。 ######"无论是记事本,notepad++,还是UltraEdit,都可以轻松打开文本文件 ",只是你没碰到,其实他们都会出现乱码,如果文件内容是任意编码的混合编码文件,没有哪个编辑器可以正确显示 ,因为不存在足够多的信息让编辑器识别每个编码的类型。对于单一编码的文件,可以通过对编码规则的试探来猜测是哪种编码的,比如一个文件的内容,如果每个字节的最高位都为0,则可以猜测它是assic码,再比如上面那位说的ucs2,如果前两个字节是0xfffe或0xfeff则认为这是ucs2编码,但实际文件中这两个字节经常不存在,所以编辑器没法识别,gb系列则每个字节的高位都是1,utf有很强的规则性也比较好识别,这里说的比较好识别不是一定能识别出来,而是规律性与其他编码区别较大,不太容易搞混。

kun坤 2020-06-07 12:51:25 0 浏览量 回答数 0

问题

java 反射获取目标方法并执行 windows无错 centos上报错?报错

爱吃鱼的程序员 2020-06-06 15:44:47 0 浏览量 回答数 1

回答

ReOSSC/CSDK上线啦 感谢亲的反馈,这个地方的确是我们文档的问题,我们会尽快修复,谢谢 ------------------------- 回9楼iti的帖子 如果可以object name是utf8编码,这个库可以去掉 ------------------------- 回18楼雪漠胡杨的帖子 目前还没有支持,下个版本我们会发布windows下的oss c sdk ------------------------- ReOSSC/CSDK上线啦 oss c sdk官网发了一个新版本,建议有需要的同学下载最新版本,有问题请随时反馈。 ------------------------- 回30楼yanrk的帖子 应该不会的,sdk中oss_get_object_to_file并没有将文件内容全部下载到pool中然后写到file,而是读取一部分,然后写到文件中去的。你可以测试一下,有问题请反馈。 ------------------------- 回18楼雪漠胡杨的帖子 vc单独出了windows版本,主要是gcc有一些c99的扩展,比如typeof,另外vc下windows版本相对比较统一,sdk提供第三方的依赖库,方便用户使用 ------------------------- 回25楼renderbus的帖子 vc单独出了windows版本,请试用,有问题请反馈 ------------------------- 回27楼yanrk的帖子 建议您参考一下OSS API中get object接口请求参数内容,请求头的参数是类似If-Modified-Since,应该会达到您要的效果 ------------------------- 回23楼renderbus的帖子 建议您参考一下OSS API中get object接口请求参数内容 ------------------------- 回14楼小吥点的帖子 c++的建议您在c的基础上稍微封装一下 ------------------------- 回 40楼(yanrk) 的帖子 对于sts的使用,sdk已经做了封装,不需要用户显示在header里面做设置,只需要对config结构体中的sts_token进行赋值,sdk会自动做检测,可以参考如下的代码初始化:     aos_str_set(&options->config->id,  tmp_id);     aos_str_set(&options->config->key, tmp_key);     aos_str_set(&options->config->sts_token, sts_token); 设置options->config->sts_token后就可以了 ------------------------- 回 39楼(月光轩辕) 的帖子 list bucket目前没有提供,建议通过控制台查看有哪些bucket ------------------------- 回 40楼(yanrk) 的帖子 另外建议看一下oss c sdk的文档,里面有对sts使用的说明,包括一些简单的sample, https://docs.aliyun.com/?spm=5176.7189909.0.0.KA2HPI#/pub/oss/sdk/c-sdk&authorization ------------------------- 回 46楼(jzj_forever) 的帖子 oss c sdk lib中使用的第三方库lib本质上是一个符号表,并不是严格意义上的静态库,因为oss c sdk lib是一个静态库,并没有执行到类似exe的链接那部分,sample中的第三方lib是和oss c sdk lib中的一样的,而sample程序链接错误有可能是缺少一些动态库,在sample的Debug目录下面有一些可能有用的DLL。对于链接错误(比如提示缺少动态库),可以使用Dependency Walker检查一下,这个工具还是挺好用的 ------------------------- 回 47楼(yanrk) 的帖子 是的,对于list object需要另外增加一条规则"acs:oss:*:1059511093068718:rayvisionoutput",之前的规则"acs:oss:*:1059511093068718:rayvisionoutput/*" 是针对object的,而list object是针对bucket的 ------------------------- 回 53楼(yanrk) 的帖子 有c sdk相关的问题或者建议欢迎随时提出 ------------------------- 回 58楼(xiaoningcn) 的帖子 从你提供的情况来看有可能是网络问题,看一下上传网络的情况,可以的话抓一下包 ------------------------- 回 60楼(泅水冬流) 的帖子 有的,在sample里面的DEBUG目录下有一些常用的依赖库,应该是够了,如果还提示缺少库,建议使用Dependency walker查看一下 ------------------------- 回 63楼(初次使用oss) 的帖子 这个问题可以复现吗?从错误信息来看是读文件信息时就问题 ------------------------- 回 67楼(ninthocean) 的帖子 host不需要http://,oss c sdk会自动帮你加上,只需要oss-cn-beijing.aliyuncs.com ------------------------- 回 69楼(1movier) 的帖子 官网上有c的sdk的, https://docs.aliyun.com/?spm=5176.383663.9.10.fhRiYp#/pub/oss/sdk/sdk-download&c ------------------------- 本帖更新为oss c/c++ sdk分享交流区,里面会持续更新一些问题和分享,欢迎大家提出好的建议和想法 ------------------------- 回 63楼(初次使用oss) 的帖子 首先建议升级一下apr库,看一下是否还有这个错误,现在oss c sdk没有处理这种情况,你可以看一下这个文档: https://www.calazan.com/apache-2-2-partial-results-are-valid-but-processing-is-incomplete-unable-to-stat-file-x-sendfile/?replytocom=44548 ------------------------- 请把配置中的bucket名字和host发一下 ------------------------- 回 73楼(up366) 的帖子 请问问题原因找到了吗 ------------------------- 回 76楼(小弟叶良辰) 的帖子 根据您提出来的代码,我理解的进度条是在上传过程中显示上传的进度,对于multipart上传,一个简单的做法如下:首先,您是可以知道上传文件的总大小的(具体实现下面给出参考),然后每次上传时会指定上传的范围(具体可以参考sample中test_oss_multipart.c的test_multipart_upload_from_file函数),通过一个累计上传的变量,可以得到一个简单的上传进度条。附上获取文件大小的一个代码参考:    aos_file_buf_t * fb = aos_create_file_buf(parent_pool);    int res = aos_open_file_for_read(parent_pool, filepath->data, fb);    其中fb->file_last就是文件的总大小 希望上述说明对您有所帮助 ------------------------- 回 78楼(小弟叶良辰) 的帖子 如果仅仅是为了统计累计上传的话,我觉得没有必要新开一个线程,这样会增加复杂度。我们分两种情况说明进度条:1、上传一个新的文件,之前没有上传,设定一个变量uploaded统计上传part的大小,这种情况下每完成一次oss_upload_part_from_file,就更新变量uploaded,加上file大小已知,这样就可以得到进度。2、这个文件之前已经上传过,由于某些原因没有完成全部上传,但知道upload id,这个时候通过upload id进行续传,这个时候可以通过oss_list_upload_part拿到已经上传的每个part的信息,包括每个part的大小,这样就可以得到已经上传part的总量,然后按照情况1继续统计。这样的做法比较简单,也能达到目的,当然,如果你要多线程上传part,也就是先对文件切片,然后搞个线程池,每个线程上传一个part,那就会复杂很多了 ------------------------- 回 80楼(小弟叶良辰) 的帖子 写的有点小问题,1、文件小于100KB也能用multipart,等同于只有一个1个part,当然您也可以把小于100KB的用put object上传。2、每个part的大小根据您的网络环境进行调整,100KB是偏小了,正常情况可以调整到1MB或者10MB。3、最后一片的upload_file->file_last 是文件大小,而不是剩余的,可以看一下sample中的例子。下个版本我们会把multipart upload封装成一个接口,用户只需要提供文件名和每个part的大小就可以了 ------------------------- 回 83楼(小弟叶良辰) 的帖子 params->max_ret = 10; 这句话意味着你只会取10个 ------------------------- 稍后我分享一个multipart的实现吧,可以参考一下 ------------------------- 回 85楼(小弟叶良辰) 的帖子 http://bbs.aliyun.com/read/263108.html?displayMode=1 , 参考一下这个,希望对您有所帮助

yjseu 2019-12-02 02:32:01 0 浏览量 回答数 0

回答

1.安装webpack npm install -g webpack 1 2.安装vue-cli vue-cli是什么? vue-cli 是vue.js的脚手架,用于自动生成vue.js模板工程的。 使用步骤: 安装vue-cli: npm install -g vue-cli 1 使用vue-cli构建项目 vue init webpack project-name //创建一个基于webpack模板的名为project-name的项目 1 目前可用的模板包括: browserify –全功能的Browserify + vueify,包括热加载,静态检测,单元测试。 browserify-simple–一个简易的Browserify + vueify,以便于快速开始。 webpack–全功能的Webpack + vueify,包括热加载,静态检测,单元测试。 webpack-simple–一个简易的Webpack + vueify,以便于快速开始。 安装项目依赖 cd project-name //进入项目目录 npm install //安装项目依赖 npm run dev //运行项目 1 2 3 此时在浏览器打开:localhost:8080即可看到欢迎页。 关于webpack和vue-cli的更多使用方法参见官方文档。 但是这个只能在本地跑,要如何在我们自己的服务器上访问呢?此时需要执行 npm run build 1 搭建开发环境 本来想用vue-cli重新创建项目,试了几次总是出现各种问题,没办法成功。最后在仔细查看 Element-UI 的官方文档的 快速上手 部分的时候发现 饿了么 团队给了一个他们自己的 项目模板 。于是我就用这个模板来尝试了下,结果成功了。所以,如果你不想太折腾的话,建议还是使用官方给的项目模板,可以省很多事。 第一步:安装项目模板 克隆/下载项目模板 将下载的模板放到你项目的根目录下 安装依赖 npm install 1 运行项目模板 npm run dev 1 此时在浏览器打开:localhost:8080即可看到欢迎页。 技术分享 项目模板里已经把需要配置的文件都配置好了。 第二步:安装element-ui 第一步,我们成功安装了项目模板,接下来,我们需要安装element-ui到项目下。 npm i element-ui@next -D 1 开始使用 接下来我们就可以参照 Element-UI 的官方文档上手开发了。 例子 我们参照官方的按钮组件使用说明,在项目模板的基础上做一个按钮的例子。其它文件不需要改动,只修改App.vue文件的内容。代码如下: App.vue {{ msg }} <el-button @click.native="startHacking">Let‘s do it 显示默认颜色 成功按钮 警告按钮 危险按钮 信息按钮 hover 显示颜色 成功按钮 警告按钮 危险按钮 信息按钮 效果如下图所示: 技术分享 使用过程中碰到的问题: 1. phantomjs安装失败 由于源的问题,安装phantomjs必须要“搭梯子”,使用内网无法下载。所以解决的方法有两种: 方法一:通过科学上网,然后安装。 方法二:对于不知道怎么“搭梯子”的同学,可以通过更改源来下载,操作方法如下: npm install phantomjs --phantomjs_cdnurl=http://cnpmjs.org/downloads 1 2.打开页面乱码 通过 Element-UI 官方提供的项目模板开发,会发现在浏览器打开页面的时候,中文是乱码的。如下图所示: 技术分享 但html页面中已经设置了 。 仔细查看该页面所涉及的文件的编码格式的时候,发现引用的App.vue 文件的编码格式是GBK ,所以把该文件编码格式改为UTF-8 即可。

景凌凯 2020-04-30 13:05:40 0 浏览量 回答数 0

回答

检测源码格式,如果不是utf8,则进行转换,否则跳过import chardetimport sysimport codecs def findEncoding(s): file = open(s, mode='rb') buf = file.read() result = chardet.detect(buf) file.close() return result['encoding'] def convertEncoding(s): encoding = findEncoding(s) if encoding != 'utf-8' and encoding != 'ascii': print("convert %s%s to utf-8" % (s, encoding)) contents = '' with codecs.open(s, "r", encoding) as sourceFile: contents = sourceFile.read() with codecs.open(s, "w", "utf-8") as targetFile: targetFile.write(contents) else: print("%s encoding is %s ,there is no need to convert" % (s, encoding)) if name == "__main__": if len(sys.argv) != 2: print("error filename") else: convertEncoding(sys.argv[1]) 实际测试,可以成功转换。 知识点chardet,这个模块是用来检测编码格式的。检测完成之后返回一个dict类型。dict的key又两个,一个是encode,一个是confidence,参数函数顾名思义。with as 这个语法很好用,特别是在打开文件的时候,可以处理忘记关闭文件导致文件一直被占用等异常。

ylrf1212 2019-12-02 01:08:21 0 浏览量 回答数 0

问题

请教ExtJs与数据库通信的问题,请各位老师帮助?报错

爱吃鱼的程序员 2020-06-10 14:27:07 0 浏览量 回答数 1

回答

Re【原创】配置阿里云服务器CentosRedHat64位服务器 格式化后我们把它挂载到到/web/目录 让它用来专门存放网站相关数据 mount /dev/xvdb1 /web/ 挂载后编辑/etc/fstab使分区在开机时自动挂载到/web/ echo "/dev/xvdb1 /web/ ext3 defaults 0 0" >> /etc/fstab 这里顺便附上卸载分区命令,供挂错的孩纸备用。 umount   挂载点设备如: umount /mnt 现在该正式安装程序了 -------↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓--------Centos系统的童鞋这里可以直接无视---------↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓------------ 因为Redhat yum在线更新是收费的,我们现在把它改下 下面这些是直接在网上转来的,已经过我测试,放心使用 更新Yum源为163的yum源: 1.导入CentOS-5的GPG证书 rpm --import http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-5 2.让yum使用网易的源: cd /etc/yum.repos.d/ wget http://mirrors.163.com/.help/CentOS-Base-163.repo 3.修改repo文件 在所有mirrorlist前面加上#,把所有$releasever替换成5 sed -i '/mirrorlist/d' CentOS-Base-163.repo sed -i 's/\$releasever/5/' CentOS-Base-163.repo 4.清理并重新生成yum缓存 yum clean metadata yum makecache ------↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑---------Centos系统的童鞋这里可以直接无视------------↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑--------- ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 在安装程序前,我们先把基础环境包安装下,否则安装以下程序的时候会出现很多问题 -------↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓--------RedHat系统的童鞋这里可以直接无视---------↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓------------ 如果是Centos系统的话,我们还要先改个文件,作用是为了让服务器可以安装或更新kernel开头的软件,因为我们的环境要用到 vim /etc/yum.conf 按I开始编辑(记住噢,教程往下就省略了) 找到 exclude=kernel* 在前面加上#号 修改好后按ESC键  输入以下命令保存(记住噢,教程往下就省略了) :wq ------↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑---------RedHat系统的童鞋这里可以直接无视------------↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑--------- ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 开始安装基础环境包 sudo -sLANG=Cyum -y install gcc gcc-c   autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers lsof unzip 等了好久吧 现在准备开始安装程序了,都要安装些什么呢?我把要安装的列出来了,有不需要的大家可以不安装。 libiconv 作用转换编码 libmcrypt 作用加密 mhash 同上 mcrypt  同上 cmake 安装Mysql时需要 bison 同上 libunwind 使用tcmalloc 加速 mysql 和 nginx需要 google-perftools 使用tcmalloc 加速 mysql 和 nginx需要 mysql 不解释 pcre 安装nginx需要 nginx 不解释 php 不解释 memcache 缓存加速 memcached 同上 eaccelerator 同上 libevent 安装 memcached 需要 PDO_MYSQL php可以用pdo操作数据库 不知道安装什么版本?下载包找不到?找不到就不用找到,我已经都帮你们找好了,全是最新的安装包。 往下拉↓↓↓ 找这些安装包可花了我不少时间,版主大人 给加个精安慰下吧 libiconv 1.14 http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz libmcrypt 2.5.8 http://sourceforge.net/projects/ ... 5.8.tar.gz/download mhash 0.9.9.9 http://downloads.sourceforge.net ... 740843&big_mirror=0 mcrypt 2.6.8 http://sourceforge.net/projects/ ... wnload?source=files cmake 2.8.10.1 http://www.cmake.org/files/v2.8/cmake-2.8.10.1.tar.gz bison 2.5 http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz libunwind 1.1 http://download.savannah.gnu.org/releases/libunwind/libunwind-1.1.tar.gz google-perftools 2.0 http://gperftools.googlecode.com/files/gperftools-2.0.tar.gz mysql 5.5.28 http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.28.tar.gz pcre 8.31 ftp://ftp.csx.cam.ac.uk/pub/soft ... re/pcre-8.31.tar.gz Nginx 最新稳定版:1.3.8 http://nginx.org/download/nginx-1.3.8.tar.gz php 最新稳定版  5.4.8 http://cn2.php.net/get/php-5.4.8.tar.gz/from/tw1.php.net/mirror memcached 最新稳定版2.2.7 http://pecl.php.net/get/memcache memcached 1.4.15 http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz libevent 2.0.20 https://github.com/downloads/lib ... .0.20-stable.tar.gz eaccelerator 42067 https://github.com/eaccelerator/eaccelerator/tarball/master PDO_MYSQL 1.0.2 http://pecl.php.net/get/PDO_MYSQL ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 开个楼单独说下 大家执行命令的时候最好 一行一行去复制执行 不要一次全复制去执行,有可能会出错 ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装包都下载好了吧?那我们开始安装吧 把所有下载的压缩包 传到/web/backup/soft 目录 关于上传可以用Filezilla 这个软件 新建一个站点  协议选择sftp 账号和密码 输入putty 登陆账号密码就可以了 安装 libiconv cd /web/backup/softtar zxvf libiconv-1.14.tar.gzcd libiconv-1.14./configure --prefix=/usr/localmakemake installcd ../ ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 libmcrypt cd /web/backup/softtar zxvf libmcrypt-2.5.8.tar.gzcd libmcrypt-2.5.8/./configuremakemake install/sbin/ldconfigcd libltdl/./configure --enable-ltdl-installmakemake installcd ../../ ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 mhash cd /web/backup/softtar zxvf mhash-0.9.9.9.tar.gzcd mhash-0.9.9.9/./configuremakemake installcd ../ 设置共享资源 ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.laln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.soln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.aln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.laln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.soln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 mcrypt cd /web/backup/softtar zxvf mcrypt-2.6.8.tar.gzcd mcrypt-2.6.8//sbin/ldconfig./configuremakemake installcd ../ ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 cmake cd /web/backup/softtar zvxf cmake-2.8.10.1.tar.gzcd cmake-2.8.10.1 ./bootstrapmake && make installcd ../ 注:如果安装不成功或图省事可以使用yum -y install cmake来快速安装 ,安装这个需要些时间的。 ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 libunwind cd /web/backup/softtar zvxf libunwind-1.1.tar.gzcd libunwind-1.1./configure --enable-sharedmake && make installcd ../ ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 google-perftools cd /web/backup/softtar zvxf gperftools-2.0.tar.gzcd gperftools-2.0./configure --enable-shared --enable-frame-pointersmake && make installcd ../ 更新,使动态链接库能够被系统共享 echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf/sbin/ldconfig ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 重点来了 现在开始准备安装Mysql 创建mysql用户组和用户 /usr/sbin/groupadd mysql/usr/sbin/useradd -g mysql mysql 创建mysql数据库所需要的目录 mkdir -p /web/data/mysqlchown -R mysql:mysql /web/data/mysql 安装 Mysql su - rootcd /web/backup/softtar zvxf mysql-5.5.28.tar.gzcd mysql-5.5.28cmake -DCMAKE_INSTALL_PREFIX=/web/soft/mysql -DMYSQL_DATADIR=/web/data/mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DSYSCONFDIR=/etc/ -DWITH_SSL=yes -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_READLINE=onmake && make install 建立软链接 ln -s /web/soft/mysql/lib/lib* /usr/lib/ 配置Mysql数据库 cd /web/soft/mysql./scripts/mysql_install_db --basedir=/web/soft/mysql/ --datadir=/web/data/mysql/ --user=mysql 复制配置文件 cp ./support-files/my-large.cnf /etc/my.cnf 如提示是否复制 输入y回车 设置mysql开机自动启动服务 cp ./support-files/mysql.server /etc/rc.d/init.d/mysqldchkconfig --add mysqldchkconfig --level 345 mysqld on ------↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓会在文件中搜索内容的童鞋可以无视↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓----- 因为教程后面要修改的文件内容挺多,先中断一会,说下打开文件后如果搜索内容 如上面这个操作 vim /etc/rc.d/init.d/mysqld 打开文件后 先不要按I编辑 输入 /basedir 然后回车 这里的意思是 搜索 basedir 如果找到的内容不是 再按N查下一个 如果找到了自己要改的内容再按I编辑就可以了 /查找内容 反斜杠 查找内容 是搜索的意思,童鞋记住了没 再罗嗦一下,在putty粘贴复制好的内容,直接在相应位置鼠标右键就可以了 -------↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑会在文件中搜索内容的童鞋可以无视↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑------ 修改服务配置文件 vim /etc/rc.d/init.d/mysqld 找到相应代码修改为(不会修改文件?看3楼加红字。不会查找内容?网 ↑↑↑↑↑↑↑看) basedir=/web/soft/mysqldatadir=/web/data/mysql 数据初始化,及修改root密码 service mysqld startcd /web/soft/mysql/./bin/mysql_secure_installation 运行上面命令后,会先提示你输入mysql密码,因为默认是空直接回车 提示是否设置新密码(set root password),输入y,根据提示输入两边新密码后回车 提示是否删除匿名用户(remove anonymous users),输入y 提示是否禁止远程登录(disallow root login remotely),输入y 提示删除测试数据库(remove test database and access to it),输入y 提示现在重新载入权限表(reload privilege tables now),输入y 软连接mysql ln -s /web/soft/mysql/bin/mysql /bin 设置软连接后 直接在命令行 mysql -u root -p  就可以进入mysql了 使用tcmalloc优化mysql 修改MySQL启动脚本(根据你的MySQL安装位置而定) vim /web/soft/mysql/bin/mysqld_safe 在# executing mysqld_safe的下一行,加上: export LD_PRELOAD=/usr/local/lib/libtcmalloc.so 重启服务,查看tcmalloc是否生效 (第二条命令显示即生效) service mysqld restartlsof -n | grep tcmalloc ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 pcre cd /web/backup/softtar zxvf pcre-8.31.tar.gzcd pcre-8.31/./configuremake && make installcd ../ 设置共享资源( 这里要注意:因为我是64位系统所以位置为cd /lib64 如果是32位系统请把cd /lib64改为 cd /lib) cd /lib64/ln -s libpcre.so.0.0.1 libpcre.so.1 ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 第二个重点来了 安装 Nginx 创建www用户和组,创建www虚拟主机使用的目录,并且赋予他们适当的权限 groupadd wwwuseradd -g www wwwmkdir -p /web/wwwchmod  w /web/wwwchown -R www:www /web/www 为tcmalloc添加目录,并且赋予适当权限 mkdir -p /tmp/tcmalloc/chown -R www:www /tmp/tcmalloc/ cd /web/backup/softtar zvxf nginx-1.3.8.tar.gzcd nginx-1.3.8 ------------伪装开始------------------ 以下操作是伪装服务器信息的,大家可以不修改(伪装的作用是让其他人看不出你网站用的是nginx) vim ./src/core/nginx.h 复制代码 修改NGINX_VERSION为你希望显示的版号 【这里我改为了1.4.31】 修改NGINX_VER为你希望显示的名称 【这里我改为了lighttpd】 修改NGINX_VAR 为你希望显示的名称 【这里我改为了lighttpd】 ------------伪装结束------------------ 继续安装Nginx ./configure --user=www --group=www --prefix=/web/soft/nginx --with-http_stub_status_module --with-http_ssl_module --with-google_perftools_modulemake && make installcd ../ 修改 nginx.conf ,令nginx可以 google-perftools加速 vim /web/soft/nginx/conf/nginx.conf 修改前面几行为:(也就是http{以上的代码) user www www;worker_processes 4;error_log logs/error.log crit;pid logs/nginx.pid;google_perftools_profiles /tmp/tcmalloc/;events {  use epoll;  worker_connections 65535;} 测试运行Nginx cd /web/soft/nginx./sbin/nginx -t 如果显示下面信息,即表示配置没问题 nginx: the configuration file /web/soft/nginx/conf/nginx.conf syntax is ok nginx: configuration file /web/soft/nginx/conf/nginx.conf test is successful 输入代码运行nginx服务 ./sbin/nginxps au|grep nginx 如果显以类似下面的信息,即表示nginx已经启动 root     27056  0.0  0.1 103232   852 pts/0    S    09:57   0:00 grep nginx 输入代码检测是否支持加速 lsof -n | grep tcmalloc 如果显示类似下面的信息,即表示支持tcmalloc加速 (mysqld和nginx两个线程都支持) mysqld    20707 mysql  mem       REG              202,1  2212983     837411 /usr                                             /local/lib/libtcmalloc.so.4.1.0 nginx     27051   www    9w      REG              202,1        0   33951543 /tmp                                             /tcmalloc/.27051 nginx     27052   www   11w      REG              202,1        0   33951541 /tmp                                             /tcmalloc/.27052 nginx     27053   www   13w      REG              202,1        0   33951542 /tmp                                             /tcmalloc/.27053 nginx     27054   www   15w      REG              202,1        0   33951540 /tmp                                             /tcmalloc/.27054 编写nginx 启动服务 cd /etc/init.dvim nginx 输入以下代码并保存( 复制时要仔细,检查是否复制完成,打开文件后按I进入编辑状态再右键粘贴) #!/bin/sh # # nginx - this script starts and stops the nginx daemon # # chkconfig:   - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \ #               proxy and IMAP/POP3 proxy server # processname: nginx # config:      /etc/nginx/nginx.conf # config:      /etc/sysconfig/nginx # pidfile:     /var/run/nginx.pid # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ "$NETWORKING" = "no" ] && exit 0 nginx="/web/soft/nginx/sbin/nginx"prog=$(basename $nginx)NGINX_CONF_FILE="/web/soft/nginx/conf/nginx.conf"[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginxlockfile=/var/lock/subsys/nginx start() {    [ -x $nginx ] || exit 5    [ -f $NGINX_CONF_FILE ] || exit 6    echo -n $"Starting $prog: "    daemon $nginx -c $NGINX_CONF_FILE    retval=$?    echo    [ $retval -eq 0 ] && touch $lockfile    return $retval} stop() {     echo -n $"Stopping $prog: "    killproc $prog -QUIT    retval=$?    echo    [ $retval -eq 0 ] && rm -f $lockfile    return $retval    killall -9 nginx} restart() {    configtest || return $?    stop     sleep 1     start }reload() {    configtest || return $?    echo -n $"Reloading $prog: "    killproc $nginx -HUP    RETVAL=$?    echo} force_reload() {    restart}configtest() {    $nginx -t -c $NGINX_CONF_FILE}rh_status() {    status $prog}rh_status_q() {    rh_status >/dev/null 2>&1}case "$1" in    start)        rh_status_q && exit 0    $1        ;;    stop)        rh_status_q || exit 0        $1        ;;    restart|configtest)        $1        ;;    reload)        rh_status_q || exit 7        $1        ;;    force-reload)        force_reload        ;;    status)        rh_status        ;;    condrestart|try-restart)        rh_status_q || exit 0        ;;    *)        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"         exit 2 esac 设置权限,并添加到启动服务列表中 chmod 755 /etc/init.d/nginxchkconfig --add nginxchkconfig --level 345 nginx on/web/soft/nginx/sbin/nginx -s stopservice nginx start ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 第三个重点 安装 PHP (准备在服务器安装Dedecms的童鞋要注意了,这里的PHP版本比较高,有些旧函数被抛弃了,经我测试,安装最新版的Dedecms5.7时登录后台页面空白,如需安装Dedecms建议安装PHP 5.2.8版本, phpwind discuz 不受影响 ) 安装前先执行以下命令 32位系统执行 ln -s /web/soft/mysql/lib/libmysqlclient.so.18  /lib/ 64位系统执行 cp -frp /usr/lib64/libldap* /usr/lib/ln -s /web/soft/mysql/lib/libmysqlclient.so.18  /lib64/ 继续执行 mkdir ext/phar/phar.pharcd /web/backup/softtar zvxf php-5.4.8.tar.gzcd php-5.4.8./configure --prefix=/web/soft/php --with-config-file-path=/web/soft/php/etc --with-mysql=/web/soft/mysql --with-mysqli=/web/soft/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --disable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --disable-fileinfomake ZEND_EXTRA_LIBS='-liconv'make install 复制配置文件 cp php.ini-production /web/soft/php/etc/php.inicd ../ 安装 memcache cd /web/backup/softtar zvxf memcache-2.2.7.tgzcd memcache-2.2.7/web/soft/php/bin/phpizeldconfig./configure --with-php-config=/web/soft/php/bin/php-configmake && make install 修改php配置文件,使其支持memcache vim /web/soft/php/etc/php.ini 在文件中搜索; extension_dir = "./" 在下面增加第一行代码,搜索;extension=php_shmop.dll在下面增加第二行代码 ( 照顾一下粗心的童鞋,再说一次搜索的方法是VIM进入文件后输入/然后输入要查找的内容回车) extension_dir = "/web/soft/php/lib/php/extensions/no-debug-non-zts-20100525/"extension = "memcache.so" 安装 eaccelerator扩展 cd /web/backup/softtar zvxf eaccelerator-eaccelerator-42067ac.tar.gzcd eaccelerator-eaccelerator-42067ac/web/soft/php/bin/phpize./configure --enable-eaccelerator=shared --with-php-config=/web/soft/php/bin/php-configmake && make install 修改php配置文件,使其支持eaccelerator vim /web/soft/php/etc/php.ini 在文件尾部增加以下代码( Shift G快速移动到文档尾部) [eaccelerator] zend_extension="/web/soft/php/lib/php/extensions/no-debug-non-zts-20100525/eaccelerator.so"eaccelerator.shm_size="32"eaccelerator.cache_dir="/tmp/eaccelerator"eaccelerator.enable="1"eaccelerator.optimizer="1"eaccelerator.check_mtime="1"eaccelerator.debug="0"eaccelerator.log_file = "/web/soft/php/var/log/eaccelerator_log"eaccelerator.filter=""eaccelerator.shm_max="0"eaccelerator.shm_ttl="3600"eaccelerator.shm_prune_period="3600"eaccelerator.shm_only="0"eaccelerator.compress="1"eaccelerator.compress_level="9" 增加eaccelerator目录 mkdir -p /tmp/eaccelerator ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 libevent cd /web/backup/softtar zvxf libevent-2.0.20-stable.tar.gzcd libevent-2.0.20-stable./configuremakemake installcd ../ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5 ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 memcached cd /web/backup/softtar zvxf memcached-1.4.15.tar.gzcd memcached-1.4.15./configuremakemake installcd ../ 启动 memcached /usr/local/bin/memcached -d -m 100  -p 11211 -u root 内存小童鞋要注意了:这会以守护程序的形式启动 memcached(-d),为其分配 100m 内存(-m 100),并指定监听 localhost,即端口 11211 让 memcached 自动启动 vim /etc/rc.d/rc.local 在页尾加入以下代码 以www用户启动 /usr/local/bin/memcached -d -m 100  -p 11211 -u www 附上常用命令 -d 选项是启动一个守护进程, -m 是分配给Memcache使用的内存数量,单位是MB,这里是10MB -u 是运行Memcache的用户,这里是root -l 是监听的服务器IP地址,如果有多个地址的话,这里指定了服务器的IP地址192.168.0.122 -p 是设置Memcache监听的端口,这里设置了12000,最好是1024以上的端口 -c 选项是最大运行的并发连接数,默认是1024,这里设置了256,按照你服务器的负载量来设定 -P 是设置保存Memcache的pid文件 ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 PDO_MYSQL ln -s /web/soft/mysql/include/* /usr/local/include/cd /web/backup/softtar zxvf PDO_MYSQL-1.0.2.tgzcd PDO_MYSQL-1.0.2//web/soft/php/bin/phpize./configure --with-php-config=/web/soft/php/bin/php-config --with-pdo-mysql=/web/soft/mysqlmakemake installcd ../ 修改php配置文件,使其支持pdo vim /web/soft/php/etc/php.ini 在文件中搜索extension = "memcache.so"(刚才添加的代码) ,在下面增加 extension="pdo_mysql.so" 运行 /web/soft/php/bin/php -m 查看是否含有pdo_mysql 含有则成功 安装 php-fpm cp /web/soft/php/etc/php-fpm.conf.default /web/soft/php/etc/php-fpm.confvim /web/soft/php/etc/php-fpm.conf 修改以下地方   注意:以下代码每行所在的位置均不同,如果找到的代码前面有;要去除,后面的数字不一样也要修改,这个要注意 如何边编辑边查找? 找到对应行编辑后按下ESC再输入 /查找内容 查找就行了 [global]pid = run/php-fpm.pid-perror_log = log/php-fpm.logemergency_restart_threshold = 10emergency_restart_interval = 1mprocess_control_timeout = 5spm.start_servers = 20pm.min_spare_servers = 5pm.max_spare_servers = 20pm.max_children = 20 修改nginx,使其支持php vim /web/soft/nginx/conf/nginx.conf 找到并修改以下代码把前面#号去除 location ~ \.php$ {    root           html;    fastcgi_pass   127.0.0.1:9000;    fastcgi_index  index.php;    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;    include        fastcgi_params;} 将php-fpm 作为服务运行 cp /web/backup/soft/php-5.4.8/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpmchmod 700 /etc/init.d/php-fpm chkconfig --add php-fpm chkconfig --level 345 php-fpm on 服务方式启动php-fpm service php-fpm restart 现在我们来重启下服务器 reboot 重启成功后运行ps aux查看正在运行的进程 是否有nginx php-pfm mysql 有的话就说明成功了 ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 装好了服务器,有些童鞋可能要迫不及待想架设网站了今天太累了,明天继续更新怎么在服务器架设网站 (将以phpmyadmin、phpwind8.7、phpwind9.0、discuz2.5安装举例) ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 架设网站前先创建两个文件夹 config  用来存放nginx网站配置文件 logs  用来存放日志 mkdir /web/data/configmkdir /web/data/logs 再把 nginx 配置下 vim /web/soft/nginx/conf/nginx.conf 在文件尾部} 上面增加 include /web/data/config/*.conf; 此作用是设置nginx网站配置文件路径,以后新增网站就不要来编辑nginx.conf文件了,网站多时也方便管理 平滑重启nginx(以后每增加或修改nginx配置文件时都要重启) service nginx reload ------------------------- Re【原创】配置阿里云服务器CentosRedHat64位服务器 安装 phpMyadmin 先把用来访问phpMyadmin的域名解析到服务器 下载个最新的 3.5.3版本 下载地址 http://sourceforge.net/projects/ ... 1f2263b6722fa88ca82 备用地址 http://jaist.dl.sourceforge.net/ ... ll-languages.tar.gz 下载后把它传到/web/backup/code 此文件夹是用来放源码的 cd /web/backup/codetar zxvf phpMyAdmin-3.5.3-all-languages.tar.gz -C /web/www/ cd /web/wwwmv phpMyAdmin-3.5.3-all-languages/ phpmyadmin创建nginx配置文件 vim /web/data/config/phpmyadmin.conf输入以下内容( 代码里的www.phpmyadmin.com 改为自己要绑定的网址) server {    listen 80;    client_max_body_size 10M;    server_name www.phpmyadmin.com;    index index.php index.html index.htm;    root /web/www/phpmyadmin;    autoindex off;    location ~ .*\.(php|php5|php4|shtml|xhtml|phtml)?$ {        fastcgi_pass   127.0.0.1:9000;        include fastcgi.conf;    }        location ~ .*\.(ico|gif|jpg|jpeg|png|bmp|swf|js|css)$        {               expires 5d;          access_log off;        }    access_log  /web/data/logs/phpmyadmin.log;} 重启下Nginx service nginx reload 访问看看是否成功了

svaaa 2019-12-02 00:26:00 0 浏览量 回答数 0

问题

No bean named 'shiroFilter' is defined?报错

爱吃鱼的程序员 2020-06-22 15:23:42 0 浏览量 回答数 1

问题

搭建SSM项目时一直搭建不了mybatis,大家帮帮忙?报错

爱吃鱼的程序员 2020-06-10 10:18:42 0 浏览量 回答数 1

问题

【机场停机位资源分配优化】第三方检测程序

helk83 2019-12-01 21:22:15 6132 浏览量 回答数 7

问题

shiro报错 There is no session with id [xxx] ?报错

爱吃鱼的程序员 2020-06-14 14:52:58 0 浏览量 回答数 1

问题

热点第三方工具分享

我想带宝宝 2019-12-01 21:35:14 11867 浏览量 回答数 1

问题

Spring搭建的项目Tomcat启动的时候报错??报错

爱吃鱼的程序员 2020-06-08 20:20:34 0 浏览量 回答数 1

问题

PHPSDK对中文的处理是不是有问题(版本v1.1.6)

mushi 2019-12-01 21:29:36 6172 浏览量 回答数 2

回答

请求方法 我们支持基于URL发起HTTP/HTTPS POST请求。请求参数是JSON格式的结构体,以http body的方式发送到服务器端。其中,公共查询参数clientInfo位于url query参数里。 以下一条未编码的图片同步检测请求示例: http://green.cn-shanghai.aliyuncs.com/green/image/scan?clientInfo={"userId":"120234234","userNick":"Mike","userType":"others"} 其中, http指定了请求通信协议。 green.cn-shanghai.aliyuncs.com指定了内容检测API服务的服务接入地址。 green/image/scan指定了具体的业务接口,即图片同步检测接口。 clientInfo={"ip":"127.0.0.2","userId":"120234234","userNick":"Mike","userType":"others"} 指定了公共查询参数。 通信协议 支持通过HTTP或HTTPS协议请求通信。为了获得更高的安全性,推荐您使用HTTPS协议发送请求,尤其是涉及敏感数据时。 请求参数 您需要在每个请求中指定公共请求参数和具体接口规定的业务请求参数。其中,业务参数以body的方式透传,body结构说明请参照各接口API的具体描述。 字符编码 请求及返回结果都使用UTF-8字符集进行编码。

保持可爱mmm 2020-03-27 19:00:46 0 浏览量 回答数 0

回答

open 函数可以打开一个文件。超级简单吧?大多数时候,我们看到它这样被使用: f = open('photo.jpg', 'r+') jpgdata = f.read() f.close() 我现在写这篇文章的原因,是大部分时间我看到open被这样使用。有三个错误存在于上面的代码中。你能把它们全指出来吗?如不能,请读下去。在这篇文章的结尾,你会知道上面的代码错在哪里,而且,更重要的是,你能在自己的代码里避免这些错误。现在我们从基础开始: open的返回值是一个文件句柄,从操作系统托付给你的Python程序。一旦你处理完文件,你会想要归还这个文件句柄,只有这样你的程序不会超出一次能打开的文件句柄的数量上限。 显式地调用close关闭了这个文件句柄,但前提是只有在read成功的情况下。如果有任意异常正好在f = open(...)之后产生,f.close()将不会被调用(取决于Python解释器的做法,文件句柄可能还是会被归还,但那是另外的话题了)。为了确保不管异常是否触发,文件都能关闭,我们将其包裹成一个with语句: with open('photo.jpg', 'r+') as f: jpgdata = f.read() open的第一个参数是文件名。第二个(mode 打开模式)决定了这个文件如何被打开。 - 如果你想读取文件,传入r - 如果你想读取并写入文件,传入r+ - 如果你想覆盖写入文件,传入w - 如果你想在文件末尾附加内容,传入a 虽然有若干个其他的有效的mode字符串,但有可能你将永远不会使用它们。mode很重要,不仅因为它改变了行为,而且它可能导致权限错误。举个例子,我们要是在一个写保护的目录里打开一个jpg文件, open(.., 'r+')就失败了。mode可能包含一个扩展字符;让我们还可以以二进制方式打开文件(你将得到字节串)或者文本模式(字符串) 一般来说,如果文件格式是由人写的,那么它更可能是文本模式。jpg图像文件一般不是人写的(而且其实不是人直接可读的),因此你应该以二进制模式来打开它们,方法是在mode字符串后加一个b(你可以看看开头的例子里,正确的方式应该是rb)。 如果你以文本模式打开一些东西(比如,加一个t,或者就用r/r+/w/a),你还必须知道要使用哪种编码。对于计算机来说,所有的文件都是字节,而不是字符。 可惜,在Pyhon 2.x版本里,open不支持显示地指定编码。然而,io.open函数在Python 2.x中和3.x(其中它是open的别名)中都有提供,它能做正确的事。你可以传入encoding这个关键字参数来传入编码。 如果你不传入任意编码,一个系统 - 以及Python -指定的默认选项将被选中。你也许被诱惑去依赖这个默认选项,但这个默认选项经常是错误的,或者默认编码实际上不能表达文件里的所有字符(这将经常发生在Python 2.x和/或Windows)。 所以去挑选一个编码吧。utf-8是一个非常好的编码。当你写入一个文件,你可以选一个你喜欢的编码(或者最终读你文件的程序所喜欢的编码)。 那你怎么找出正在读的文件是用哪种编码写的呢?好吧,不幸的是,并没有一个十分简单的方式来检测编码。在不同的编码中,同样的字节可以表示不同,但同样有效的字符。因此,你必须依赖一个元数据(比如,在HTTP头信息里)来找出编码。越来越多的是,文件格式将编码定义成UTF-8。 有了这些基础知识,我们来写一个程序,读取一个文件,检测它是否是JPG(提示:这些文件头部以字节FF D8开始),把对输入文件的描述写入一个文本文件。 import io with open('photo.jpg', 'rb') as inf: jpgdata = inf.read() if jpgdata.startswith(b'\xff\xd8'): text = u'This is a JPEG file (%d bytes long)\n' else: text = u'This is a random file (%d bytes long)\n' with io.open('summary.txt', 'w', encoding='utf-8') as outf: outf.write(text % len(jpgdata))

montos 2020-04-16 21:32:13 0 浏览量 回答数 0

回答

回 楼主(易水) 的帖子 lz好,我们检测了您的邮箱状态是正常的,根据您的描述,这种情况建议对方修改下浏览器编码,修改成utf-8试试~

阿里云支持与服务 2019-12-02 02:25:38 0 浏览量 回答数 0

回答

字符集问题吧,统一uft8不是很好么######回复 @JayKong : 效率低可以转换10000次看个时间对比,bug可以google到######回复 @陈俊贤 : 愿闻其详。iconv为何会效率低且有BUG呢?######回复 @JayKong : 转换字符最好用mb_convert_encoding,iconv效率低还有bug######回复 @陈俊贤 : 非常谢谢仁兄,借用你的灵感,想到了解决办法,确实是字符集的问题。解决办法就一条代码,哈哈。$file = iconv(mb_detect_encoding($file), 'UTF-8', $file);######回复 @JayKong : 用mb_detect_encoding检测下是什么编码######数据库用的什么字符集啊?######谢谢仁兄的热情帮忙,问题已经解决,确实是字符集的问题,只要将中文文件转换编码即可,$file = iconv(mb_detect_encoding($file), 'UTF-8', $file);######那你看看php中的字符串是什么字符集?出现乱码一定是字符集出了错######回复 @JayKong : 也许字段不是utf8呢######UTF8######用下 mysql_real_escape_string试试呢######尝试过无解###### 肯定是字符集的问题。 1、要么是数据库整体的字符集 2、要么是字段的字符集 3、要么是程序编码的字符集 一步步排解 ######文件系统的名称编码是GBK么? 比如xp系统 ######回复 @Jason阿坚 : 数据库是UTF8,不转码当然会出错######是######发出程序或debug看看######set names utf8

爱吃鱼的程序员 2020-06-02 16:58:54 0 浏览量 回答数 0

回答

这是编码问题啊, 你试试看 row.encode("utf-8") 或者你试试用codecs 用这个包打开文件 ###### python3 windows下默认好像以CP936解码文件。解码失败有类似错误很正常。 有一个叫chardet的第三方模块也有人推荐,用来检测编码的。 我之前没学会reader,当时也不知道怎么样过滤文件里的不标准格式的部分数据。我后来自己想明白的。CVS文件每行以分隔符split 得到就是一个list,可以把CSV文件看成二维数组,这样处理起来逻辑简单。 ###### 最后怎么解决的

kun坤 2020-06-06 15:55:41 0 浏览量 回答数 0

回答

字符集问题吧,统一uft8不是很好么回复<aclass='referer'target='_blank'>@JayKong:效率低可以转换10000次看个时间对比,bug可以google到回复<aclass='referer'target='_blank'>@陈俊贤:愿闻其详。iconv为何会效率低且有BUG呢?回复<aclass='referer'target='_blank'>@JayKong:转换字符最好用mb_convert_encoding,iconv效率低还有bug回复<aclass='referer'target='_blank'>@陈俊贤:非常谢谢仁兄,借用你的灵感,想到了解决办法,确实是字符集的问题。解决办法就一条代码,哈哈。$file=iconv(mb_detect_encoding($file),'UTF-8',$file);回复<aclass='referer'target='_blank'>@JayKong:用mb_detect_encoding检测下是什么编码数据库用的什么字符集啊?谢谢仁兄的热情帮忙,问题已经解决,确实是字符集的问题,只要将中文文件转换编码即可,$file=iconv(mb_detect_encoding($file),'UTF-8',$file);那你看看php中的字符串是什么字符集?出现乱码一定是字符集出了错回复<aclass='referer'target='_blank'>@JayKong:也许字段不是utf8呢UTF8用下mysql_real_escape_string试试呢尝试过无解 肯定是字符集的问题。 1、要么是数据库整体的字符集 2、要么是字段的字符集 3、要么是程序编码的字符集 一步步排解文件系统的名称编码是GBK么?比如xp系统 回复<aclass='referer'target='_blank'>@Jason阿坚:数据库是UTF8,不转码当然会出错是发出程序或debug看看setnamesutf8

爱吃鱼的程序员 2020-06-22 21:54:29 0 浏览量 回答数 0

问题

程序员报错行为大赏-配置报错

问问小秘 2020-06-11 13:18:25 6 浏览量 回答数 1

回答

您所拥有的EXTRATERRESTRIAL ALIEN (U+1F47D)和BROKEN HEART (U+1F494)不属于基本的多语言平台。他们不能在Java作为一个字符来表示,甚至,"".length() == 4。它们绝对不是空字符,如果您不使用支持它们的字体,则会看到正方形。 MySQL的utf8只支持基本多文种平面,你需要使用utf8mb4,而不是: 对于补充字符,utf8根本无法存储该字符,而utf8mb4需要四个字节来存储它。由于utf8根本无法存储字符,因此在utf8列中没有任何补充字符,并且在从旧版MySQL升级utf8数据时,您不必担心转换字符或丢失数据。 因此,要支持这些字符,您的MySQL必须为5.5+,并且需要在utf8mb4任何地方使用。连接编码需要为utf8mb4,字符集必须为utf8mb4,协作需要utf8mb4。对于Java来说,它仍然只是"utf-8",但是MySQL需要区别对待。 我不知道您使用的是什么驱动程序,但是与连接程序无关的一种设置连接字符集的方法是发送查询: SET NAMES 'utf8mb4' 建立连接之后。 另请参见Connector / J: 14.14:如何将4字节UTF8,utf8mb4与Connector / J一起使用? 要将4字节UTF8与Connector / J一起使用,请将MySQL服务器配置为character_set_server = utf8mb4。只要未在连接字符串中设置characterEncoding,Connector / J将使用该设置 。这等效于字符集的自动检测。 调整列和数据库: var1 varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL 同样,您的MySQL版本需要相对最新才能获得utf8mb4支持。来源:stack overflow

保持可爱mmm 2020-05-17 13:13:04 0 浏览量 回答数 0

问题

python selenium chrome 只要打开 就被反爬虫?报错

爱吃鱼的程序员 2020-06-07 17:15:50 0 浏览量 回答数 1
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 SQL审核 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站 人工智能 阿里云云栖号 云栖号案例 云栖号直播