以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  服务器地址和nat后的公网地址  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=179830)

--  作者:huhu
--  发布时间:2022/9/13 10:56:00
--  服务器地址和nat后的公网地址

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20220913105210.png
图片点击可在新窗口打开查看
链接数据库的地址和列属性里的地址。如果都是内网使用那么内网的192.168.1.72地址是可以的。
可是外网的用户没法用,提示链接不到数据库。那么地址应该写内网的地址还是公网的地址?
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20220913105125.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2022/9/13 10:59:00
--  
外网的用户应该通过公网IP连接
--  作者:huhu
--  发布时间:2022/9/13 11:07:00
--  

上面2个图的地址都是内网地址不动,改成下面这个代码?是这个意思?

BeforeConnectOuterDataSource

If e.Name = "FoxData" Then
    If Network.Ping("192.168.1.72", 1000) = False Then \'如果第一个IP无法接通
        e.ConnectionString = e.ConnectionString.Replace("192.168.1.72", "180.169.230.117")
    End If
End If

--  作者:huhu
--  发布时间:2022/9/13 11:11:00
--  
试了一下,外网还是
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20220913111012.png
图片点击可在新窗口打开查看
还是链接不上。
--  作者:有点蓝
--  发布时间:2022/9/13 11:12:00
--  
自己的服务器?宽带有固定IP?路由有做内外网的映射?
--  作者:huhu
--  发布时间:2022/9/13 11:15:00
--  
自己的服务器地址192.168.1.72   nat映射后的地址180.169.230.117
--  作者:有点蓝
--  发布时间:2022/9/13 11:22:00
--  
没有做1433的端口映射
--  作者:huhu
--  发布时间:2022/9/13 14:28:00
--  
映射可以了。
外网登陆ft可以正常登陆。
可是附件上传的那个ftp还是内网的192.168.1.72的地址,那么外网还是没法上传文件。
希望内网和外网都可以上传文件。
是不是列属性固定为内网ip是不是不对呢。应该怎么做呢?


--  作者:有点蓝
--  发布时间:2022/9/13 14:37:00
--  
到项目AfterOpenProject事件写代码重设列属性的ftp;http://www.foxtable.com/webhelp/topics/1477.htm
--  作者:huhu
--  发布时间:2022/9/13 14:54:00
--  


FTPClient

如果某列被扩展为多文件型,并用于远程文件管理,那么可以用此属性返回一个FTPClient

示例

可以在用户管理窗口增加一个名为FTP的扩展用户属性,让用户在登录的时候,可以输入一个FTP地址,然后项目事件Initialize中加入下面的代码:

DataTables("表名").DataCols("列名").FTPClient.Host = User.ExtendedValues("FTP")




没看懂示例。后面的FTP是啥?

内网登陆肯定是ftp://192.168.1.72   启动检测ping不同内网地址192.168.1.72就切换到了公网的180.169.230.117链接数据库。自然上传附件也应该是ftp://180.169.230.117。  那么怎么自动更换ftp呢。

DataTables("需求明细表").DataCols("附件").FTPClient.Host = User.ExtendedValues("FTP")
此主题相关图片如下:qq截图20220913144732.png
按此在新窗口浏览图片