标题:请问有什么方法可以得出文件的虚拟路径?
只看楼主
好学
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
帖 子:622
专家分:318
注 册:2004-5-4
结帖率:50%
 问题点数:0 回复次数:11 
请问有什么方法可以得出文件的虚拟路径?

比如一个在很深的文件夹的xxx.asp,用什么方法可以求出它的URL(http://www.xxx.com/../../../xxx.asp的形式),我用server.mappath好象不可以,

还有表示文件夹的“/”和“\”在用法上有什么不同啊,可不可以混用啊?

搜索更多相关主题的帖子: 路径 文件 虚拟 
2004-11-22 18:02
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 

纠正一下,URL不是虚拟路径,Server.MapPath() 函数的参数可以是一个虚拟路径,而它的返回值是文件的物理路径(带盘符的,比如C:\inetpub\wwwroot\test.asp)

取得文件的URL代码如下: <% Dim URL URL="http://" & Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("Script_Name") Response.Write URL %>

ServerVariables 集合有哪些常用参数?   要用Reques对象来读取客户端的环境参数,就要使用到ServerVariables 集合对象来保存环境变量。   下图表是ServerVariables 集合比较常用的一些参数:

ALL_HTTP 客户端发送的所有 HTTP 标题文件。
CONTENT_LENGTH 客户端发出内容的长度。
CONTENT_TYPE 内容的数据类型。如:"text/html"。同附加信息 的查询一起使用,如 HTTP 查询 GET、POST 和 PUT。
LOCAL_ADDR 返回接受请求的服务器地址。如果在绑定多 个 IP 地址的多宿主机器上查找请求所使用的地址 时,这条变量非常重要。
LOGON_USER 用户登录 Windows NT 的帐号
QUERY_STRING 查询 HTTP 请求中问号(?)后的信息。
REMOTE_ADDR 发出请求的远程主机 (client) 的 IP 地址。
REMOTE_HOST 发出请求的主机 (client) 名称。如果服务器无此 信息,它将设置为空的 MOTE_ADDR 变量。
REQUEST_METHOD 该方法用于提出请求。相当于用于 HTTP 的 GET、HEAD、POST等 等。
SERVER_NAME 出现在自引用 URL 中的服务器主机名、DNS 化名 或 IP 地址。
SERVER_PORT 发送请求的端口号。
HTTP_ACCEPT_LANGUAGE 机器使用的语言环境

[此贴子已经被作者于2004-11-23 09:20:31编辑过]


天津网站建设 http://www./
2004-11-23 09:17
好学
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
帖 子:622
专家分:318
注 册:2004-5-4
得分:0 
用一个文件求出另一个文件的路径可以吗?如用YYY.ASP求xxx.asp的路径,你写的好象是求自己的路径的。
2004-11-23 09:54
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 

你说清楚一点怎么用yyy.asp取xxx.asp的url,是只给出xxx.asp这个文件名,不包括路径,然后让yyy.asp到一个目录下遍历有没有xxx.asp,然后得出xxx.asp的url?


天津网站建设 http://www./
2004-11-23 10:25
好学
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
帖 子:622
专家分:318
注 册:2004-5-4
得分:0 
是啊,能实现吗
2004-11-23 10:52
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 

当然能实现,不过有什么现实的意义呢?你说说看。


天津网站建设 http://www./
2004-11-23 11:53
好学
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
帖 子:622
专家分:318
注 册:2004-5-4
得分:0 

当然有了,比如有一个a.html,现在要生成一个b.html,而在b.html中要加一个a.html的连接,而这两个文件因为不在同一个文件夹中,所以a.html的路径要重新求出来。

还有,比如黑别人的网站的时候要检测别人的每一个文件的路径

2004-11-23 12:29
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 

1.b.html中要加a.html的链接,a.html你根本不知道它在哪个子目录里?a.html这个名字哪来的?搞不懂你

2.先学好简单的ASP编程再说


天津网站建设 http://www./
2004-11-23 12:43
好学
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
帖 子:622
专家分:318
注 册:2004-5-4
得分:0 

根据日期生成文件名啊,可以根据日期判断啊,比如a.html换成20041121.html,b.html换成20041122.html,或者根据ID生成HTML文件都可以。

而这两个文件因为不在同一个分类而不在同一个文件夹中,因为生成20041122.html的时候要在里头加入20041121.html的相关连接,在生成20041121.html的时候把它的路径写入数据库也可以实现,不过这样有些麻烦,有没有办法根据文件名求出他的目录等信息。

楼上是不是不会啊,怎么老是闪烁其辞,老想着转移话题啊

2004-11-23 12:51
griefforyou
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:3336
专家分:0
注 册:2004-4-15
得分:0 

晕。。。你有不同的目录当然要把生成的静态页的相对路径保存在数据库中呀。你想只保存一个文件名不是自找麻烦吗?

[QUOTE] 楼上是不是不会啊,怎么老是闪烁其辞,老想着转移话题啊 [/QUOTE]

我会不会不要紧,你会不会才要紧!


天津网站建设 http://www./
2004-11-23 13:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-8167-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.053979 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved