我有一台电脑在前面TMG 7.0和一个公共远程FTP服务器。安装TMG客户端。Windows防火墙已关闭。杀毒软件:McAfee病毒扫描企业版(8.8)AntySpyware企业版(8.8)无附加组件。反病毒测试断断续续。
它无法通过Java和Php连接到服务器。Filezilla,explorer.exe和Go写入程序连接没有问题。
对于Java我得到连接拒绝错误:
java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:182)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:203)
不管我如何试图通过Java联系:
它在等待5分钟后触发连接超时。错误是超时异常。所有变体都通过直接连接、全局代理、ftp代理、超文本传输协议代理以及所有这些组合进行了测试。所有变体都通过IP和主机名进行测试。
无法连接的Php代码示例:
<?php
$host = "ftphost";
$connect = ftp_connect($host,21);
if(!$connect)
{
echo("Error: $host");
exit;
}
else
{
echo("Cheers: $host");
}
?>
但是FileZilla连接没有问题。浏览器连接没有问题。Go编写的程序连接起来没有问题。
你知道什么可以阻止java和PHP吗?我如何找出阻止JRE和Apache的策略或程序设置?
只要我的两分钱。这是我的工作Ftp代码,我已经使用它两年了,主要问题是服务器端如果您启用被动模式,那么您需要在防火墙中打开一系列被动端口,例如2000:4000,以保持连接不被破坏。另外,请确保您的Ftp服务器已针对这些被动端口进行了配置。你可以在网上阅读更多https://slacksite.com/other/ftp.html
import config.AppConfigPropertyReader;
import model.FtpClients;
import org.apache.commons.io.FileUtils;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPReply;
import org.apache.commons.net.ftp.FTPSClient;
import org.apache.log4j.Logger;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
public class ConnectRemote {
private static Logger logger = Logger.getLogger(ConnectRemote.class);
private static String RemoteFtpLogServerHost = AppConfigPropertyReader.getProperty("RemoteFtpLogServerHost");
private static String RemoteFtpLogServerTomcatLog = AppConfigPropertyReader.getProperty("RemoteFtpLogServerTomcatLog");
private static String RemoteFtpLogServerTomcatLogPassword = AppConfigPropertyReader.getProperty("RemoteFtpLogServerTomcatLogPassword");
private static String LocalTomcatSistemLogPath = AppConfigPropertyReader.getProperty("LocalTomcatSistemLogPath");
public static void starttransfers() {
List<FtpClients> ftpuserlist = new ArrayList<FtpClients>();
ftpuserlist.add(new FtpClients(RemoteFtpLogServerTomcatLogPassword, RemoteFtpLogServerTomcatLog, LocalTomcatSistemLogPath));
for (FtpClients ftpuser : ftpuserlist) {
try {
ftps = new FTPSClient();
//ftps.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out)));
ftps.connect(RemoteFtpLogServerHost, 21);
int reply = ftps.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftps.disconnect();
throw new IOException("Exception in connecting to FTPS Server");
}
if (ftps.login(ftpuser.getUser(), ftpuser.getPassword())) {
ftps.execPBSZ(0);
//ftps.execPROT("P"); You have to use reuse ssl enabled ftp server
ftps.setBufferSize(1024000);
ftps.changeWorkingDirectory("/");
ftps.setFileType(FTP.BINARY_FILE_TYPE);
ftps.setFileTransferMode(FTP.COMPRESSED_TRANSFER_MODE);
ftps.enterLocalPassiveMode();
ftps.setControlKeepAliveTimeout(300);
//do your logic
if (ftps.isConnected()) {
try {
ftps.logout();
ftps.disconnect();
ftps = null;
ftpuserlist.clear();
} catch (IOException e) {
logger.error("Ftps Client Closing " + e.getMessage());
}
}
} else {
logger.error("Cannot Login to Remote Ftps Server");
}
} catch (Exception e) {
e.printStackTrace();
logger.error("Exception" + e.getMessage());
}
}
}
}
您可以尝试使用PHP脚本调试问题,如下所示:
<?php
$host = "xx.xx.xx.xx";
$ftpUser = "annonymous";
$ftpPass = null;
$checkPort = @fsockopen($host, 21, $errno, $errstr, 10);
if($checkPort!==false){
echo "can able to connect ftp server";
$conn_id = ftp_connect($host);
if($conn_id!==false){
echo "\n Ftp server available and connected trying to logged in";
$loginStatus = ftp_login($conn_id, $ftpUser, $ftpPass);
if($loginStatus!==false){
echo "\n Connected to ftp";
} else {
echo "\n Please check credentials";
}
}
} else {
echo "server can't reach to ftp server";
}
?>
不管我们有多少人共同参与同一个项目,我们要确保整个项目的每一行代码都像是同一个人编写的一样。
后端 这是来自领域设置
我目前正在构建一个基于AngularJS的复杂前端网站。后端由PHP和MySQL提供支持。 我有两个问题,都是关于用户权限的。 > 您将如何在前端管理这些权限?你什么时候取回/重新取回特权?您将如何检查每个需要特权的方法? 我正在寻找一个智能解决方案,它不会限制我可以定义的特权数量,但如果没有定义,它也会提供一组默认的基本特权。 关于SQL实现 特权应该应用于特定公司的所有用户。 db模式类似于这
本文向大家介绍前端必学之PHP语法基础,包括了前端必学之PHP语法基础的使用技巧和注意事项,需要的朋友参考一下 写在前面的话 PHP是一种创建动态交互性站点的强有力的服务器端脚本语言。PHP能够包含文本、HTML、CSS以及PHP代码,在服务器上执行,结果以纯文本返回浏览器 代码标识 PHP代码以<?php 开头,以?>结尾,且可以放置在文档中的任何位置 PHP语句以分号(;)结尾,P
在前端使用React,后端使用RESTful API,并通过JSON Web令牌(JWT)进行授权,我们如何处理会话?例如,在登录之后,我从REST获得一个JWT令牌。如果我把它保存到localStorage中,我就容易受到XSS的攻击,如果我把它保存到cookie,除了我把cookie设置为HttpOnly,但是React不能读取HttpOnly cookie(我需要读取cookie以从中获取J
我正在使用magento 1.9社区版,突然我无法访问magento前端和magento后端 这是错误页 跟踪UTF8',Array)../public_html/lib/varien/db/adapter/pdo/mysql.php(504):Zend_db_adapter_pdo_abstract->查询('set NAMES UTF8',Array)../public_html/app/co