我正在尝试设置SSHFTP服务器,并在通过apache @ localhost连接时,我立即断开连接"写入失败:损坏的管道"错误消息.我可以很好地连接jack@localhost,但不是用户apache.
这些是我添加到sshd_config的唯一设置(我想在我开始工作时只允许apache):
Match User apache
ChrootDirectory /apache
AllowTCPForwarding no
X11Forwarding no
ForceCommand /usr/lib/openssh/sftp-server
Match
#AllowUsers apache
Run Code Online (Sandbox Code Playgroud)
这就是我添加到ssh_config中的内容:
ServerAliveInterval 120
TCPKeepAlive no
Run Code Online (Sandbox Code Playgroud)
我确保用户apache对/ apache文件夹具有完全权限,并且我可以作为此用户登录并修改终端中的项目.该文件夹只有2个文件:index.html和test.php
我还去了网络上的另一台计算机,并使用FileZilla作为用户登录jack.它运作得很好.
这是我尝试连接时终端的日志.
jack@JacksServer:~$ ssh -v apache@localhost
OpenSSH_5.9p1 Debian-5ubuntu1.1, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to localhost [127.0.0.1] port 22.
debug1: Connection established.
debug1: identity file /home/jack/.ssh/id_rsa type -1
debug1: identity file /home/jack/.ssh/id_rsa-cert type -1
debug1: …Run Code Online (Sandbox Code Playgroud) 当我运行时maven flyway:migrate,我收到错误
无法在项目 myProject 上执行目标 org.flywaydb:flyway-maven-plugin:6.5.5:migrate (default-cli): org.flywaydb.core.api.FlywayException: 无法连接到数据库。配置url,用户和密码!
我的 application.yml 文件中有我的 Spring Boot 设置,但我猜这个错误意味着它没有检测到数据库配置。该文档说,“然后,Spring Boot 将自动使用其数据源自动装配 Flyway,并在启动时调用它。” 如果我将配置添加到我的 pom.xml 中的 flyway 插件部分,它会成功连接到数据库,但我希望它使用我的 application.yml 配置。不是 pom.xml。那么我做错了什么?
链接到有问题的回购:https : //github.com/jack-cole/BrokenSpringBoot
应用程序.yml
spring:
datasource:
driverClassName: org.postgresql.Driver
url: "jdbc:postgresql://localhost:5433/myDB"
username: postgres
password: test123
Run Code Online (Sandbox Code Playgroud)
依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jooq</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.2.16</version>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>7.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
插件:
<plugin>
<groupId>org.springframework.boot</groupId> …Run Code Online (Sandbox Code Playgroud) 由于某种原因,我的本地dev分支是我的默认发布分支。IntelliJ UI 有什么办法可以改变这个吗?
为了澄清起见,“默认”是指该分支的默认值,而不是所有分支的默认值。所有分支的默认值都是分支名称本身。我不知道我的dev默认值是如何改变的。
我目前正在使用 Doxygen 和 Graphviz 为网站生成文档。该网站有许多 Javascript 文件,函数调用会传递到多个文件。当前生成的调用图被限制在每个单独的文件中。
有没有办法生成跨越多个文件的函数的调用图?我正在考虑使用cat连接我想要调用图跨度的所有文件,然后将其作为参数传递给 Graphviz 或 Doxygen 生成器,但我无法找到通过命令行生成调用图的方法。
如果我有以下两个文件main.js和sub.js:
mainFunc(){
subFunc();
}
Run Code Online (Sandbox Code Playgroud)
subFunc(){
sayHi("hello");
}
sayHi(msg){
console.log(msg);
}
Run Code Online (Sandbox Code Playgroud)
我希望能够生成如下所示的调用图:
[mainFunc] -> [subFunc] -> [sayHi]
即使它不是自动化的。看起来像这样的命令就可以了:
cat main.js sub.js | doxygen -makecall "mainFunc" -o myGraph.svg
我有一个 AWS 客户端 VPN 设置,以便可以连接到 VPN 的人可以访问同一 VPC 上的 EC2 服务器。一些用户报告说,他们在使用 VPN 时无法连接到服务,而其他用户则可以。
我可以在终端中执行 aping {{address_of_ec2_instance}}并获得响应,但连接到同一 VPN 的另一个用户将使用完全相同的命令获得超时,并解析相同的 IP。当他们访问https://www.whatismyip.com/时,他们报告连接到相同的 ISP 和位置。
我唯一可以推测的是,也许我没有在 EC2 安全设置上允许正确的端口范围,并且某些用户在端口范围内,但其他用户不在端口范围内。对于给定的客户端 VPN 终端节点,如何确定要转发的端口范围?
我正在尝试使用此函数解码 JSON Web 令牌:
function parseJwt(token) {
var base64Url = token.split('.')[1];
var base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
var jsonPayload = decodeURIComponent(atob(base64).split('').map(function(c) {
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
}).join(''));
return JSON.parse(jsonPayload);
};
Run Code Online (Sandbox Code Playgroud)
这在我的 Google Chrome 控制台中运行良好,但是当我尝试在 Google 脚本中使用它时,它显示“atob 未定义”。我查了一下 atob 的作用,即解码 64 位编码字符串。但是当我使用base64Decode(String)时,它会生成一个数组而不是字符串。我怎样才能重现atob的行为?或者还有其他方法来解码 JWT?
在我的Java 8应用程序中,我正在扫描传入的文本中的空格。但是\s在我的正则表达式中,并不能捕获所有空格。我发现到目前为止,在我的测试中尚未捕获的一个空格是“ 不间断空格”(Unicode 00A0)。这是我遇到的问题的正则表达式:
Pattern p = Pattern.compile("\\s");
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我添加\h了我的正则表达式:
Pattern p = Pattern.compile("[\\s\\h]");
Run Code Online (Sandbox Code Playgroud)
现在,我还有其他需要注意的空白\s\h吗?
是否可以通过 Github API 来判断提交是否是合并提交?它是从哪个分支合并的?
我试图查看在比较分支上的两个提交时更改的所有文件,但我想忽略从其分支的分支合并提交所做的任何更改。任何从该分支分支出来的分支都不会忽略其合并提交。
我的 SQL 导出字段上有一行,并且我试图删除字段中返回的空白值(如果它与姓氏中的“AMA”完全匹配)。但是,当我使用当前代码导出文件时,姓氏不带“AMA”的名称将被完全删除。
,Max(
Orders.ShipFirstName
+ ' ' +
CASE Orders.ShipLastName
WHEN 'AMA' THEN ''
END
) As ShipFullName
Run Code Online (Sandbox Code Playgroud)
现在,如果某人是“Ray Miller”,ShipFullName将返回空白。但如果他们的名字是“Ray AMA”,那么他们的名字将返回为“Ray”。我想要它,以便当在姓氏字段中找不到 AMA 时返回“Ray Miller”。
java ×2
javascript ×2
amazon-ec2 ×1
amazon-vpc ×1
aws-vpn ×1
case-when ×1
doxygen ×1
flyway ×1
git ×1
github-api ×1
graphviz ×1
java-8 ×1
jwt ×1
maven ×1
regex ×1
sftp ×1
spring-boot ×1
sql ×1
sql-server ×1
ssh ×1
t-sql ×1
ubuntu ×1
unicode ×1
vpn ×1