Apache通过配置.htaccess文件禁止访问.git、.svn等目录

如果你用过Git、SVN等代码版本控制工具的话,那肯定会知道,如果你需要拉去最新的代码到本地时,会自动生成一个.git或者.svn文件夹,里面包含一些项目相关的信息,如果在部署项目是,把这些文件公开暴露在外网中,可能会有一些安全隐患,所以我们通常会想一些方法来禁止访问这些文件夹。

Apache服务器中,开启Rewrite模块后,可以使用.htaccess文件来控制文件及文件夹的访问,根据这个原理,我们可以使用配置.htaccess文件禁止访问.git、.svn等目录。打开.htaccess文件,添加如下代码:

RewriteEngine on
RewriteRule ^.git - [F,L]

这样,即可禁止.git文件夹的访问,对应,如果不想公开.svn文件夹的访问,则将.git换成对应的.svn即可。当然,如果你还有一些日志文件夹、隐秘文件夹,也可以通过这样的方式来实现文件夹访问权限的控制。

继续阅读 »

Infrastructure 知识: dnf对module的处理

引言

从RHEL8/CentOS8开始,dnf取代yum作为rpm 包管理工具。与之而来的还有模块(module)这个东西。 有了它们的加持,让在同一个OS上安装不同版本的软件或者开发语言的工作比之前容易多了。

简介

Modules are special package groups usually representing an application, a language runtime, or a set of tools. They are available in one or multiple streams which usually represent a major version of a piece of software, giving you an option to choose what versions of packages you want to consume.

To simplify installation, modules usually define one or more installation profiles that represent a specific use case. For example a server or a client profile in a database module.

也就是说:

一个软件可以有多个版本,每个版本对应一个stream. 在每个stream内部,又分为proile对应到安装场景(比如开发, server, client)。

继续阅读 »

SOCKS5(SS5)重启服务器后出现不能连接的问题

我找到问题所在了,是因为ss5的pid文件导致的

默认路径位于/var/run/ss5/ss5.pid。但某些vps在重启后这个目录无缘无故消失了。每次重启系统都需要重建这个目录:mkdir /var/run/ss5。

解决方法就是:修改pid路径。

修改方法:在文件/etc/sysconfig/ss5修改参数,指定pid路径。修改配置后文件内容如下:

# Add startup option here
#SS5_OPTS=" -u root"
SS5_OPTS=" -p /var/run/ss5.pid"

原文链接:http://blog.95shouyou.com/?id=3

继续阅读 »

Firewall 命令

一、查看系统防火墙状态(如果返回 running 代表防火墙启动正常)

firewall-cmd --state

二、开启端口外网访问

1、添加端口 返回 success 代表成功(--permanent永久生效,没有此参数重启后失效)

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent

开放多个端口

firewall-cmd --zone=public --add-port=80-85/tcp --permanent

2、重新载入 返回 success 代表成功

firewall-cmd --reload

3、查看 返回 yes 代表开启成功

firewall-cmd --zone=public --query-port=80/tcp

继续阅读 »

Vue的钩子函数[路由导航守卫、keep-alive、生命周期钩子]

前言

说到Vue的钩子函数,可能很多人只停留在一些很简单常用的钩子(created,mounted),而且对于里面的区别,什么时候该用什么钩子,并没有仔细的去研究过,且Vue的生命周期在面试中也算是比较高频的考点,那么该如何回答这类问题,让人有眼前一亮的感觉呢...

Vue-Router导航守卫:

有的时候,我们需要通过路由来进行一些操作,比如最常见的登录权限验证,当用户满足条件时,才让其进入导航,否则就取消跳转,并跳到登录页面让其登录。

为此我们有很多种方法可以植入路由的导航过程:全局的, 单个路由独享的, 或者组件级的,推荐优先阅读路由文档

继续阅读 »