- 在内网环境中为 Gogs 配置 HTTPS 访问
pingxiaozhao
https网络协议http
在内网环境中为Gogs配置HTTPS访问,虽然不需要公网域名,但仍需通过自签名证书或私有证书实现加密。以下是详细步骤和方案:一、核心方案选择方案适用场景优点缺点自签名证书快速测试、临时使用无需域名,快速生成浏览器提示“不安全”私有CA证书企业内网统一管理所有设备信任私有CA,无警告需维护私有CA基础设施反向代理HTTPS集中管理多服务HTTPS统一证书管理,灵活配置需部署反向代理(如Nginx)二
- 阿里云Ubuntu 16.04 LNMP环境配置及并发优化
AndyYoungDev
TECHSNginxPHPLNMP环境配置并发
Ubuntu16.04LNMP配置及并发优化LNMP环境配置LNMP环境配置1.更新依赖sudoapt-getupdate2.安装Nginx(1.10.3)sudoapt-getinstallnginx3.安装php-fpm(7.0.32)sudoapt-getinstallphp7.0-fpm4.安装mysql服务端(5.7.24)sudoapt-getinstallmysql-server5.
- Debian8Nginx文件族详解
游离态De猫
Debian8NginxLinux
Debian8Nginx文件族详解本文主要围绕nginx的主服务程序软件包nginx-common做讲解,先讲解软件包提供的文件所构成的文件族,再讲解主配置文件的参数接下来对软件包中的文件进行讲解:/usr/share/nginx/html/index.htm##默认欢迎页,内容与/var/www/html/index.nginx-debian.html一致/lib/systemd/system/
- 漏洞扫码 处理使用笔记
万变不离其宗_8
笔记笔记
1.检测到目标X-XSS-Protection响应头缺失处理:在nginx.conf或站点配置文件的server块中添加:add_headerX-XSS-Protection"1;mode=block"always;重启Nginx:nginx-sreload验证:1.使用curl命令快速验证通过命令行(Xshell中输入命令)直接请求目标URL,检查响应头中是否包含X-XSS-Protection
- kubectl 速查手册
www.农民工
kubernetes容器云原生
kubectl速查手册资源对象文件---kind:PodapiVersion:v1metadata:name:myweblabels: app:nginxspec:containers:-name:webserver image:nginxstatus:{}annotate#更新资源所关联的注释信息#-----------------------------------------#[root@m
- NGINX 开启目录访问功能详细教程
秃头摸鱼侠
nginxnginx运维服务器
NGINX开启目录访问功能详细教程在Web开发中,某些场景下我们希望将服务器上的文件或目录暴露给外部访问。这通常发生在静态文件托管、文件共享、或者作为公共文件目录时。在NGINX中,可以通过配置使其支持对指定目录的访问。通过这种方式,用户可以直接通过URL访问指定目录下的文件。这篇文章将详细讲解如何在NGINX中开启目录访问功能,包含详细的配置步骤和注意事项。什么是NGINX的目录访问?目录访问是
- 不同Docker容器中的Nginx和后端服务如何内部通信
洗发水很好用
dockernginxjava
Nginx和后端服务都是通过Docker部署的,直接使用localhost是否能访问到后端服务?根据Docker的网络特性,当Nginx和后端服务分别部署在不同容器中时,直接使用localhost无法跨容器访问。首先,Docker容器的网络环境通常是隔离的。如果Nginx和后端服务运行在同一个Docker容器中,那么localhost是可以访问的,因为它们共享同一个网络命名空间。但如果是分开的容器
- docker-compose安装redis+nacos+nginx+mysql
wang魅力kk
redisdockernginxmysql
redis:docker-compose.ymlversion:'3'services:redis:container_name:redisimage:redis:6.2.7restart:alwaysports:-6379:6379volumes:-./data:/data-./conf/redis.conf:/etc/redis/redis.confcommand:redis-server/e
- Linux下Docker安装基础服务(Mysql、Nacos、Redis、Rocketmq、Ftp、nginx)
Alpaca Java
linux运维java-rocketmqlinuxdocker
目录前言一、目录结构及用途二、安装2.1、通用脚本2.2、Docker安装2.3、Mysql安装2.4、Nacos安装2.5、Redis安装2.6、Rocketmq安装2.8、Ftp安装2.7、nginx安装前言写了一个一键在Docker环境下安装基础服务的Linux脚本,实现了一键安装docker的Mysql、Nacos、Redis、Rocketmq、Ftp、nginx这些服务。一、目录结构及用
- SpringBoot + Redis + MySQL + nginx部署Docker
SEE_.
SpringBootspringbootredismysqlnginxdockerjava
SpringBoot+Redis+MySQL+nginx部署Docker(一)文件目录结构这是本项目的后端地址,以及前端地址。StudentMs/├──mysql/│├──conf/│└──data/├──nginx/│└──nginx.conf├──Vue/│└──dist/└──Spring/├──Dockerfile├──docker-compose.yml└──student-server
- Nginx强制http自动跳转https
非ban必选
Nginxhttpsnginxhttp
server{listen80;server_nameyuming;#permanent是301永久重定向,redirect是302临时重定向rewrite^(.*)https://$server_name$request_uripermanent;}server{listen443;server_nameyuming;sslon;#证书位置ssl_certificate/etc/nginx/ce
- nginx http强制跳转https
凌_晨
httpnginxhttps运维网络协议
1.按照如下格式修改nginx.conf配置文件,80端口会自动转给443端口,这样就强制使用SSL证书加密了。访问http的时候会自动跳转到https上面。登录后复制server{listen80;server_namewww.域名.com;rewrite^(.*)https://$server_name$1permanent;}server{listen443;server_namewww.域
- Nginx自动跳转https
weixin_33966095
运维
Nginx自动从http跳转到https#vimnginx.confserver{listen80;server_namewww.test.com;charsetutf-8;return301https://$server_name$request_uri;#添加这行,即可以实现从http跳转到httpsaccess_loglogs/wwwuat.yaok.com.logmain;location
- nginx强制跳转 https
萬萬萬v7
nginxhttps服务器
https默认是监听443端口的,没开启https访问的话一般默认是80端口。如果你确定网站80端口上的站点都支持https的话加入下面的配件可以自动重定向到httpsserver{listen80;server_nameyour.domain.com;return301https://$server_name$request_uri;}
- linux如何与windows进行共享文件夹开发,不用来回用git进行拉来拉去,这个对于swoole开发者来说特别重要
森叶
phpwindows10linuxgitswoole
linux那边安装samba,此处不再赘述,百度一堆教程,设置一个最简单的共享文件夹,一般是放nginx运行代码的地方,我的是web,将web设置用户为samba(你创建的,直接用root不行),权限设置为777,要加-R,迭代设置useraddsambasampasswdsambachown–Rsamba.samba/webchmod–R777/webwindows链接:\\192.168.1.
- 【traefik】基于k8s搭建traefik, nginx与traefik共存
喝醉的小喵
网关与代理kubernetes容器云原生docker
目录1.关于traefik2.关于nginx与trarfik的冲突3.搭建步骤3.1创建crd与rbac3.2启动traefikingresscontroller3.3创建service3.4开放dashboard3.5配置api入口路由Ingress3.6创建whoami服务3.7配置whoami的服务路由IngressRoute官方文档:TraefikProxyDocumentation-Tr
- TP6+Uniapp研发校园系统小程序APPH5校园跑腿表白墙多功能校园社交论坛
前端后端小程序微信小程序校园网
使用ThinkPHP6(TP6)作为后端框架,结合UniApp开发跨平台校园系统是一个高效的方案。一、系统架构设计技术栈组合后端:TP6(PHP)+MySQL+Redis前端:UniApp(Vue3+TS)+uViewUI接口:RESTfulAPI+JWT鉴权部署:Nginx+Docker+阿里云ECS模块划分二、关键技术实现TP6后端优化方案UniApp前端性能优化该方案已在某高校落地实施,支持
- nginx中rewrite和if的用法及配置
咖啡调调。
nginx服务器java
nginx中rewrite和if的用法及配置文章目录nginx中rewrite和if的用法及配置@[toc]一、rewrite应用1、rewrite跳转场景2、rewrite实际场景3、常用的nginx正则表达式4、常见的flag5、案例配置二、if应用1、if语句中的判断条件2、文件及目录匹配判断3、基于浏览器实现分离案例4、防盗链案例一、rewrite应用rewrite语法rewrite[re
- Nginx 是如何解决惊群效应的?
汤姆yu
架构师面试题nginx服务器运维
什么是惊群效应?第一次听到的这个名词的时候觉得很是有趣,不知道是个什么意思,总觉得又是奇怪的中文翻译导致的。复杂的说(来源于网络)TLDR;惊群效应(thunderingherd)是指多进程(多线程)在同时阻塞等待同一个事件的时候(休眠状态),如果等待的这个事件发生,那么他就会唤醒等待的所有进程(或者线程),但是最终却只能有一个进程(线程)获得这个时间的“控制权”,对该事件进行处理,而其他进程(线
- 深入剖析Nginx:技术解析、最佳实践和高级使用指南(三)
凛鼕将至
Java技术栈高级攻略nginx
本系列文章简介:本系列文章通过分析Nginx的内部机制和原理,讲解了Nginx的架构、性能优化和高可用性配置等方面的知识。此外,还介绍了Nginx的最佳实践和高级使用技巧,帮助读者更好地理解和应用Nginx。本系列文章内容详实且深入,适合对Nginx感兴趣的开发人员、系统管理员和网络工程师阅读。无论是初学者还是有一定经验的用户,都能从中获得有价值的知识和实用技巧。通过学习,读者将能够更好地理解和掌
- Linux之web服务器
Asuka07
服务器linux前端
一、web服务器简介1.www简介www是全球信息广播的意思,上网即使用www来查询信息,它结合多种多媒体,通过超链接以Internet传递信息。上网时,网站提供数据,客户端用浏览器解析数据。www所用协议为HTTP(超文本传输协议)。主流Web服务器有Apache、Microsoft的Internet信息服务器(IIS)和Unixnginx。服务器提供的数据主要是HTML和多媒体文件,HTML用
- Nginx处理Web请求机制分析
「已注销」
Nginxnginx
Nginx是一个高性能的服务器,处理的并发数可以达到几百万,为什么会这样呢?1.Worker抢占机制服务器有一个master主进程,监听80端口,默认的worker进程只有一个,我们可以配置多个;当客户端有请求进入到Nginx中,假设有三个worker抢这个请求,worker通过争抢accept_mutex这个互斥锁来获得这个请求,假设worker1抢到了,那么客户端就和worker1建立的连接关
- nginx处理Web请求机制解析
江非桐
nginx
nginx处理Web请求机制解析worker抢占机制传统服务器事件处理nginx事件处理worker抢占机制master进程fork了多个worker进程,worker进程如何和client连接呢?多个worker抢一个client的时候,会有一个互斥锁(accept_mutex)和client是对应的forkforkforkmasterworker1worker2worker3clientacc
- 三主热备架构
小何学计算机
云原生架构云原生服务器
1.要求角色主机名软件IP地址用户client192.168.72.90keepalivedvip192.168.72.100masterserverAkeepalived,nginx192.168.72.30backupserverBkeepalived,nginx192.168.72.31backupserverCkeepalived,nginx192.168.72.32webtomcat1t
- keepalived+nginx+tomcat高可用
小何学计算机
云原生nginxtomcat运维
1.要求角色主机名软件IP地址用户client192.168.72.90keepalivedvip192.168.72.100mastermasterkeepalived,nginx192.168.72.30backupbackupkeepalived,nginx192.168.72.32webtomcat1tomcat192.168.72.41webtomcat2tomcat192.168.72
- 基于 Redhat 9.5 的 LVS 负载均衡架构下 Nginx 服务器的部署与连通性实验
小卓笔记
服务器php数据库
节点规划主机角色系统网络IPclientclientredhat9.5仅主机192.168.10.100/24lvslvsredhat9.5仅主机NAT192.168.10.128/24VIP192.168.72.128/24DIPnginxrs1redhat9.5NAT192.168.72.7/24nginxrs2redhat9.5NAT192.168.72.17/24nginxrs3redha
- MySQL 设置允许远程连接完整指南:安全与效率并重
程序员Hagei
mysql安全数据库
一、为什么需要远程连接MySQL?在分布式系统架构中,应用程序与数据库往往部署在不同服务器。例如:Web服务器(如Nginx+PHP)需要连接独立的MySQL数据库数据分析师通过BI工具直连生产库多服务器集群间的数据同步但直接开放远程连接存在安全风险,需遵循最小权限原则。本指南将分步讲解安全开启远程访问的方法。二、基础配置步骤(以MySQL8.0为例)2.1修改MySQL绑定地址默认情况下MySQ
- 使用 NGINX Ingress 进行 Canary 发布
启明真纳
k8snginx运维kubernetes云原生
在现代微服务架构中,Canary发布(金丝雀发布)是一种流行的部署策略。它通过将新版本逐步推广到一小部分用户,观察其表现并降低风险,最终实现平稳过渡。本文将详细讲解如何利用NGINXIngressController在Kubernetes中配置Canary发布。什么是Canary发布?Canary发布是一种渐进式部署方式,其核心思想是将新版本的服务首先部署到生产环境中的一小部分用户(称为“金丝雀”
- 基于 Nginx Ingress Controller 的四层(TCP)转发配置
启明真纳
k8snginxtcp/ip运维kubernetes云原生容器
基于NginxIngressController的四层(TCP)转发配置1.简介本指南将展示如何通过配置ConfigMap来实现NginxIngressController的四层转发(TCP),并通过配置测试应用程序验证配置的有效性。本文中使用的Kubernetes组件包括ConfigMap、Service、Deployment以及LoadBalancer类型的Service。还将演示如何热加载修
- nginx:关于刷新404问题
dingcho
运维前端nginx运维
location/{root/www/wwww.kingbal.com;if(!-e$request_filename){rewrite^(.*)$/index.html?s=$1last;break;}}
- ASM系列六 利用TreeApi 添加和移除类成员
lijingyao8206
jvm动态代理ASM字节码技术TreeAPI
同生成的做法一样,添加和移除类成员只要去修改fields和methods中的元素即可。这里我们拿一个简单的类做例子,下面这个Task类,我们来移除isNeedRemove方法,并且添加一个int 类型的addedField属性。
package asm.core;
/**
* Created by yunshen.ljy on 2015/6/
- Springmvc-权限设计
bee1314
springWebjsp
万丈高楼平地起。
权限管理对于管理系统而言已经是标配中的标配了吧,对于我等俗人更是不能免俗。同时就目前的项目状况而言,我们还不需要那么高大上的开源的解决方案,如Spring Security,Shiro。小伙伴一致决定我们还是从基本的功能迭代起来吧。
目标:
1.实现权限的管理(CRUD)
2.实现部门管理 (CRUD)
3.实现人员的管理 (CRUD)
4.实现部门和权限
- 算法竞赛入门经典(第二版)第2章习题
CrazyMizzz
c算法
2.4.1 输出技巧
#include <stdio.h>
int
main()
{
int i, n;
scanf("%d", &n);
for (i = 1; i <= n; i++)
printf("%d\n", i);
return 0;
}
习题2-2 水仙花数(daffodil
- struts2中jsp自动跳转到Action
麦田的设计者
jspwebxmlstruts2自动跳转
1、在struts2的开发中,经常需要用户点击网页后就直接跳转到一个Action,执行Action里面的方法,利用mvc分层思想执行相应操作在界面上得到动态数据。毕竟用户不可能在地址栏里输入一个Action(不是专业人士)
2、<jsp:forward page="xxx.action" /> ,这个标签可以实现跳转,page的路径是相对地址,不同与jsp和j
- php 操作webservice实例
IT独行者
PHPwebservice
首先大家要简单了解了何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。我测试的环境为:apache2.2.11 php5.2.10做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即extension=php_soap.dll;
OK 现在我们来体验webservice
//server端 serve
- Windows下使用Vagrant安装linux系统
_wy_
windowsvagrant
准备工作:
下载安装 VirtualBox :https://www.virtualbox.org/
下载安装 Vagrant :http://www.vagrantup.com/
下载需要使用的 box :
官方提供的范例:http://files.vagrantup.com/precise32.box
还可以在 http://www.vagrantbox.es/
- 更改linux的文件拥有者及用户组(chown和chgrp)
无量
clinuxchgrpchown
本文(转)
http://blog.163.com/yanenshun@126/blog/static/128388169201203011157308/
http://ydlmlh.iteye.com/blog/1435157
一、基本使用:
使用chown命令可以修改文件或目录所属的用户:
命令
- linux下抓包工具
矮蛋蛋
linux
原文地址:
http://blog.chinaunix.net/uid-23670869-id-2610683.html
tcpdump -nn -vv -X udp port 8888
上面命令是抓取udp包、端口为8888
netstat -tln 命令是用来查看linux的端口使用情况
13 . 列出所有的网络连接
lsof -i
14. 列出所有tcp 网络连接信息
l
- 我觉得mybatis是垃圾!:“每一个用mybatis的男纸,你伤不起”
alafqq
mybatis
最近看了
每一个用mybatis的男纸,你伤不起
原文地址 :http://www.iteye.com/topic/1073938
发表一下个人看法。欢迎大神拍砖;
个人一直使用的是Ibatis框架,公司对其进行过小小的改良;
最近换了公司,要使用新的框架。听说mybatis不错;就对其进行了部分的研究;
发现多了一个mapper层;个人感觉就是个dao;
- 解决java数据交换之谜
百合不是茶
数据交换
交换两个数字的方法有以下三种 ,其中第一种最常用
/*
输出最小的一个数
*/
public class jiaohuan1 {
public static void main(String[] args) {
int a =4;
int b = 3;
if(a<b){
// 第一种交换方式
int tmep =
- 渐变显示
bijian1013
JavaScript
<style type="text/css">
#wxf {
FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#97FF98);
height: 25px;
}
</style>
- 探索JUnit4扩展:断言语法assertThat
bijian1013
java单元测试assertThat
一.概述
JUnit 设计的目的就是有效地抓住编程人员写代码的意图,然后快速检查他们的代码是否与他们的意图相匹配。 JUnit 发展至今,版本不停的翻新,但是所有版本都一致致力于解决一个问题,那就是如何发现编程人员的代码意图,并且如何使得编程人员更加容易地表达他们的代码意图。JUnit 4.4 也是为了如何能够
- 【Gson三】Gson解析{"data":{"IM":["MSN","QQ","Gtalk"]}}
bit1129
gson
如何把如下简单的JSON字符串反序列化为Java的POJO对象?
{"data":{"IM":["MSN","QQ","Gtalk"]}}
下面的POJO类Model无法完成正确的解析:
import com.google.gson.Gson;
- 【Kafka九】Kafka High Level API vs. Low Level API
bit1129
kafka
1. Kafka提供了两种Consumer API
High Level Consumer API
Low Level Consumer API(Kafka诡异的称之为Simple Consumer API,实际上非常复杂)
在选用哪种Consumer API时,首先要弄清楚这两种API的工作原理,能做什么不能做什么,能做的话怎么做的以及用的时候,有哪些可能的问题
- 在nginx中集成lua脚本:添加自定义Http头,封IP等
ronin47
nginx lua
Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com
Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。
location /{
- java-归并排序
bylijinnan
java
import java.util.Arrays;
public class MergeSort {
public static void main(String[] args) {
int[] a={20,1,3,8,5,9,4,25};
mergeSort(a,0,a.length-1);
System.out.println(Arrays.to
- Netty源码学习-CompositeChannelBuffer
bylijinnan
javanetty
CompositeChannelBuffer体现了Netty的“Transparent Zero Copy”
查看API(
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/buffer/package-summary.html#package_description)
可以看到,所谓“Transparent Zero Copy”是通
- Android中给Activity添加返回键
hotsunshine
Activity
// this need android:minSdkVersion="11"
getActionBar().setDisplayHomeAsUpEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- 静态页面传参
ctrain
静态
$(document).ready(function () {
var request = {
QueryString :
function (val) {
var uri = window.location.search;
var re = new RegExp("" + val + "=([^&?]*)", &
- Windows中查找某个目录下的所有文件中包含某个字符串的命令
daizj
windows查找某个目录下的所有文件包含某个字符串
findstr可以完成这个工作。
[html]
view plain
copy
>findstr /s /i "string" *.*
上面的命令表示,当前目录以及当前目录的所有子目录下的所有文件中查找"string&qu
- 改善程序代码质量的一些技巧
dcj3sjt126com
编程PHP重构
有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码 时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。让我们看一些基本的编程技巧: 尽量保持方法简短 尽管很多人都遵
- SharedPreferences对数据的存储
dcj3sjt126com
SharedPreferences简介: &nbs
- linux复习笔记之bash shell (2) bash基础
eksliang
bashbash shell
转载请出自出处:
http://eksliang.iteye.com/blog/2104329
1.影响显示结果的语系变量(locale)
1.1locale这个命令就是查看当前系统支持多少种语系,命令使用如下:
[root@localhost shell]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
- Android零碎知识总结
gqdy365
android
1、CopyOnWriteArrayList add(E) 和remove(int index)都是对新的数组进行修改和新增。所以在多线程操作时不会出现java.util.ConcurrentModificationException错误。
所以最后得出结论:CopyOnWriteArrayList适合使用在读操作远远大于写操作的场景里,比如缓存。发生修改时候做copy,新老版本分离,保证读的高
- HoverTree.Model.ArticleSelect类的作用
hvt
Web.netC#hovertreeasp.net
ArticleSelect类在命名空间HoverTree.Model中可以认为是文章查询条件类,用于存放查询文章时的条件,例如HvtId就是文章的id。HvtIsShow就是文章的显示属性,当为-1是,该条件不产生作用,当为0时,查询不公开显示的文章,当为1时查询公开显示的文章。HvtIsHome则为是否在首页显示。HoverTree系统源码完全开放,开发环境为Visual Studio 2013
- PHP 判断是否使用代理 PHP Proxy Detector
天梯梦
proxy
1. php 类
I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I'm sure it will help a lot of developers who try to
- apache的math库中的回归——regression(翻译)
lvdccyb
Mathapache
这个Math库,虽然不向weka那样专业的ML库,但是用户友好,易用。
多元线性回归,协方差和相关性(皮尔逊和斯皮尔曼),分布测试(假设检验,t,卡方,G),统计。
数学库中还包含,Cholesky,LU,SVD,QR,特征根分解,真不错。
基本覆盖了:线代,统计,矩阵,
最优化理论
曲线拟合
常微分方程
遗传算法(GA),
还有3维的运算。。。
- 基础数据结构和算法十三:Undirected Graphs (2)
sunwinner
Algorithm
Design pattern for graph processing.
Since we consider a large number of graph-processing algorithms, our initial design goal is to decouple our implementations from the graph representation
- 云计算平台最重要的五项技术
sumapp
云计算云平台智城云
云计算平台最重要的五项技术
1、云服务器
云服务器提供简单高效,处理能力可弹性伸缩的计算服务,支持国内领先的云计算技术和大规模分布存储技术,使您的系统更稳定、数据更安全、传输更快速、部署更灵活。
特性
机型丰富
通过高性能服务器虚拟化为云服务器,提供丰富配置类型虚拟机,极大简化数据存储、数据库搭建、web服务器搭建等工作;
仅需要几分钟,根据CP
- 《京东技术解密》有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的12月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
12月试读活动回顾:
http://webmaster.iteye.com/blog/2164754
本次技术图书试读活动获奖名单及相应作品如下:
一等奖(两名)
Microhardest:http://microhardest.ite