网站目录

Nginx 详细讲解

守給你的承諾、 提交于 2020-02-13 09:23:42
Nginx 详细讲解 一 第四部笔记 ---私人文章 一 Nginx的特点 在性能上占用的系统资源少;支持更多的并发连接(特别是静态小文件场景下)达到更高的访问效率; 在功能上Nginx不但是一个优秀的Web服务软件,还可以作为反向代理负载均衡及缓存服务使用; 在安装配置上Nginx更为方便,简单,灵活; 二 Nginx是什么? Nginx是一个开源的,支持高性能高并发的www服务和代理服务软件 Nginx因具有高并发(特别是静态资源)占用系统资源少等特性且功能丰富逐渐流行起来 Nginx不但是一个优秀Web服务软件,还具有反响代理负载均衡功能和缓存服务功能,与LVS负载均衡及Haoroxy等专业代理软件相比Nginx部署起来更为简单,方便;在缓存功能方便它又类似Squid等专业的缓存服务软件 三 Nginx的重要面试知识 3.1Nginx的重要特性 支持高并发:能支持几万并发连接(特别是静态小文件业务环境) 资源消耗少:在3万并发链接下,开启10个Nginx线程小号的内存不到200MB 可以做HTTP反向代理及加速缓存,即都在均衡功能,内置对RS节点服务器健康的检查功能,相当于专业的Haproxy软件或LVS的功能 具备Squid等专业缓存软件等的缓存功能 支持异步网络I/O事件模型epoll(linux2.6+) #跟据epoll实现的Web服务 3.2

网站URL的设计规划

流过昼夜 提交于 2020-02-09 07:45:00
对于一个网站的结构来说,URL的设计也非常的重要,在URL设计时我们应该事先做好规划,应该从用户体验和搜索引擎蜘蛛体验出发,在总体上边应该做到URL清晰、友好、方便记忆,然后还要适当的考虑对于搜索引擎排名的影响,具体来说,URL设计时我们要从下边几点来着手: 1、URL越短越好 这样做主要是为了用户体验,其实对于搜索引擎来说,不超过1000个字母都没有问题,可是如果不考虑用户体验,确实真的用了非常长的URL的话,用户看起来就有些麻烦了,甚至会马上离开你的网站,曾经有人做过这方面的试验,在搜索引擎的搜索结果中,一个较短的URL出现在一个较长的URL下边时,较短的URL的点击率是较长的URL的2.5倍。而且较短的URL也比较有利于复制与传播。人们都比较喜欢简单的东西,特别是现代,人们不喜欢太复杂的东西,能简单就简单。所以网站的URL要尽量的短。 2、URL中避免太多参数 在进行URL设计时,我们尽量使用静态的URL,虽然现代的主流搜索引擎都能够很好的去索引带有参数的动态网页了,可是,使用静态的URL还是有一定的优势的,如果由于某些原因,不能使用静态的URL,而不得不使用动态的URL时,设计的则是URL中的参数应该尽量减少,不要超过三个,一般的情况下URL中的参数2-3个就可以了。参数太多了不但用户看起来困难,对搜索引擎的索引可能也会造成一定的问题。所以,能使用静态就使用静态的URL

web常见源码泄露

孤者浪人 提交于 2020-02-08 18:24:20
前言:git,svn,hg等是代码控制系统,即开发人员在开发时使用可以提高开发效率的一种类似集成环境的系统。 转载大佬博文: 一、漏洞成因 在 WEB 安全体系当中,可能你对 SQL 注入,XSS 跨站一些漏洞已经耳熟于心了,而源码泄露问题对于大部分开发者来说就相对陌生了 , 而源码泄露导致的问题却并不少见,在过往的泄露案例当中,不仅是小网站有此问题,在一些大的厂商同样出现不少,并因此拿到 webshell。 比如在一些小型企业,可能公司并没有专门的服务器,而是把网站部署在某一个虚拟主机上面,代码文件比较多的时候 FTP 上传是比较慢的,于是开发者把代码先打包压缩后再上传,上传成功后再去服务器解压,这有虽然解决了上传速度慢的问题,不过却留下了一些安全隐患。 压缩包解压后如果没有删除,当攻击者发现后就可以把代码压缩包下载;因为部署到服务器上的都是源代码,这个时候攻击者就可以通过代码进一步挖掘一些安全漏洞:文件上传,SQL 注射等。 二、GIT 源码泄露 1. 漏洞成因 当在一个空目录执行 git init 时,Git 会创建一个 .git 目录。 这个目录包含所有的 Git 存储和操作的对象。 如果想备份或复制一个版本库,只需把这个目录拷贝至另一处就可以了。 该目录的结构如下所示: HEAD config* description hooks/ info/ objects/ refs

使用 IIS 在 Windows 上托管 ASP.NET Core

孤街醉人 提交于 2020-01-29 20:28:15
参考微软文档: https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/index?tabs=aspnetcore2x 将asp.net core网站发布到IIS,和普通网站区别不大,主要有: 1、 安装 .NET Core Windows Server 托管捆绑包 2、 在“编辑应用程序池”窗口中,将“.NET CLR 版本”设置为“无托管代码”,安装完成后需要重启电脑,或者使用命令: net stop was /y net start w3svc 3、 使用的swagger进行api文档说明,每次发布后,需要手动将目录下的xml说明复制到发布的目录下。 https://www.cnblogs.com/hoyu/archive/2018/03/06/8514243.html 来源: https://www.cnblogs.com/mebius4789/p/8638896.html

使用 Hexo 创建项目文档网站

喜欢而已 提交于 2020-01-21 15:35:26
当我们发布一个开源项目的时候,最重要的事情之一就是要创建项目文档。对使用项目的用户来说,文档是非常有必要的,通常我们可以使用下面这些方式来创建文档: GitHub Wiki :在 Github 上我们可以为每个项目都创建一个 wiki。Wiki 是由一系列的 Markdown 文件组成,所以我们可以用 wiki 来做项目文档。但这种方案也有一些缺点:wiki 的贡献者不会出现在项目贡献者列表中;文档的结构和布局都是有限制的,只能是 Github Wikis 的样式;文档存储在第三方平台上。 README:我们可以为项目创建一个 README.md 文件,它会直接展示在 Github(或 Gitlab、Coding 等 git 仓库)的项目页面。如果文档非常少,这中方案是非常适合的。但如果文档非常多,这个 README.md 文件就会非常大了。而且通常来说,README.md 是用来介绍项目,而不是展示文档。 自建网站:当然,我们也可以创建一个文档网站,然后放在自己的服务器上。这样我们就可以随意编辑文档。但这种方案的缺点是不便于追踪文档的变化、开发网站和文档维护相比前两种方案麻烦非常多、而且还需要自建主机。 Github Pages :Github 也提供了一个托管项目中静态文件的功能。我们可以为项目创建一个 gh-pages 分支,Github 就会将分支中的内容当做静态站点

Linux:SElinux导致网站无法访问

泄露秘密 提交于 2020-01-20 18:05:55
通过更改SElinux状态可以判断出,当SElinux处于关闭状态时,网站内容访问正常。 [root@master1-192-168-117-18 ~]# setenforce 0 [root@master1-192-168-117-18 ~]# getenforce Permissive [root@master1-192-168-117-18 ~]# setenforce 1 [root@master1-192-168-117-18 ~]# getenforce 0 Enforcing 查看网站的主目录的SElinux安全上下文值: [root@master1-192-168-117-18 ~]# ls -Zd /var/www/html/ drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html/ [root@master1-192-168-117-18 ~]# ls -Zd /home/wwwroot/ drwxr-xr-x. root root system_u:object_r:user_home_dir_t:s0 /home/wwwroot/ 将新添加的主目录SElinux上下文值与系统默认主目录保持一致: [root@master1-192-168-117-18 ~]#

使用jenkins配置.net mvc网站进行持续集成一

时间秒杀一切 提交于 2020-01-18 19:22:58
最近在做一个团队项目的时候,用到了自动编译发布部署环境【也可以说是持续集成】,于是顺便学习了下这个环境的搭建过程。 持续集成   持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。 1、持续集成系统的组成   一个完整的构建系统必须包括: 1) 一个自动构建过程,包括自动编译、分发、部署和测试等。 2) 一个代码存储库,即需要版本控制软件来保障代码的可维护性,同时作为构建过程的素材库。 3) 一个持续集成服务器。 其中1)自动构建和2)代码存储库,都是有相应的软件配合,开发人员需要的学习成本不高,复杂在各模块的相互配合,这一期间可能需要大量时间去调试。一旦调试完毕,对于之后工作效率的提升是成倍的。 2、MSBuild   自动构建,做.Net开发的同仁相信大多数都会使用VS,而Visual Studio用MSBuild构建.NET项目。 MSBuild所需的仅仅是一个脚本,在脚本中指定要执行的target;项目中的.csproj和.vbproj 文件都是MSBuild脚本。当编写好MSBuild脚本后,只需要一条简单的命令,即可实现代码的编译与测试工作 。 参考: [独孤九剑]持续集成实践 – MSBuild语法入门

Nginx + Lua 搭建网站WAF防火墙

心已入冬 提交于 2020-01-13 12:47:07
前言 对于项目里面 只是使用代理等常用功能 , 在线安装 即可,如需 制定化模块 ,则推荐 编译安装 PS:本文不仅仅包含Nginx相关的知识点,还包含了逆天学习方法(对待新事物的处理) 官方网站: https://nginx.org/ Github: https://github.com/nginx/nginx Nginx书籍 : Nginx Cookbook 中文版 https://huliuqing.gitbooks.io/complete-nginx-cookbook-zh/content/ Nginx官方中文文档 https://docshome.gitbooks.io/nginx-docs/content/ Nginx入门教程 https://xuexb.github.io/learn-nginx/ 淘宝Nginx文档 http://tengine.taobao.org/book/ 1.在线安装 1.1.修改yum源地址 清华源: https://mirrors.tuna.tsinghua.edu.cn/help/centos/ 更新软件包缓存: yum makecache 1.2.在线安装Nginx 在线安装比较简单,参考官方文档即可: https://nginx.org/en/linux_packages.html PS:线上选 stable 的就行了,记得把

Google搜索使用技巧

谁说胖子不能爱 提交于 2020-01-11 18:55:59
Google搜索使用技巧 熟练使用搜索引擎 高级查询指令 [ intitle: ] 按标题搜索帮助 google 限定了你搜索的结果,只有那些标题含有你指定的关键词的页面会返回给你。例如 “intitle: login password” 会返回标题含有 login ,而页面里面随便什么地方含有 password 的网页给你。当你想在标题里面搜索超过 2 个词的时候,你可以使用 “allintitle:” ,当然也可以使用 “intitle” 来代替搜索, “intitle: login intitle: password” 和 “allintitle: login password” 的搜索结果是一样的。 [ inurl: ] 按链接搜索返回那些网址 url 里面包含你指定关键词的页面。例如 “inurl: passwd” ,返回那些网址 url 里面包含你指定关键词 passwd 的页面。同上,如果你想在网址里搜索多个关键词,你可以使用 “allinurl:” 语法。例如 “allinurl: etc/passwd“ 会搜索网址里含有 etc 和 passwd 的网页,斜杠 “/” 会被 google 忽略。 [ site: ] 语法“ site:” 只搜索指定网域里的关键词,例如 “exploits site:hackingspirits.com” 将搜索

《Nginx系列》之青铜入门篇 反向代理 负载均衡 动静分离就是这么简单

感情迁移 提交于 2020-01-06 16:10:41
1.什么是Nginx? Nginx是一个高性能的自由、开源的HTTP和 反向代理服务器 ,特点是 占用内存少 , 并发性能强 。 nginx能干嘛? 可以作为IMAP、POP3、SMTP的代理服务器; 可以作为HTTP服务器进行网站的发布处理; 可以作为反向代理进行负载均衡的实现; 2.Nginx的安装 2.1 将Nginx相关安装包上传到服务器上 [root@localhost nginx-1.12]# ls -l 总用量 2956 -rw-r--r--. 1 root root 981687 12月 21 16:09 nginx-1.12.2.tar.gz -rw-r--r--. 1 root root 2041593 12月 21 16:09 pcre-8.37.tar.gz nginx-1.12.2.tar.gz :nginx源码包,用于安装Nginx pcre-8.37.tar.gz :Perl库, 是一个用C语言编写的正则表达式函数库 。 2.2 安装pcre 解压pcre源码安装包 [root@localhost nginx-1.12]# tar zxf pcre-8.37.tar.gz 编译安装pcre [root@localhost pcre-8.37]# ./configure checking for a BSD-compatible install...