C# ASP.net FTP上传功能本地编译没问题,网站发布后通过网址访问再用此功能报404错误
FTP上传代码是在网上找的,我在本地编译后选择本地文件点击上传,是可以的,然后我编译版本后发布网站,通过网址去访问网站然后就会报404错误。在网上查了下,的确有很多人遇到...
FTP上传代码是在网上找的,我在本地编译后选择本地文件点击上传,是可以的,然后我编译版本后发布网站,通过网址去访问网站然后就会报404错误。在网上查了下,的确有很多人遇到这个问题,但是都没有一个很好的解决方案,有一个哥们说是因为我通过网址访问后选择了本地文件,点击上传后,代码会去服务器上找这个文件。不知道什么原因了。各位大神给点解决方案~~急!急!急!
展开
2013-12-31
展开全部
404 错误意味着链接指向的网页不存在,即原始网页的URL失效,这种情况经常会发生,很难避免,比如说:网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问;当Web 服务器接到类似请求时,会返回一个404 状态码,告诉浏览器要请求的资源并不存在。
导致这个错误的原因一般来说,有三种:
1、无法在所请求的端口上访问Web站点。
2、Web服务扩展锁定策略阻止本请求。
3、MIME映射策略阻止本请求。
解决办法:
1. 对于存在的网页内容由于路径改变而导致访问不了时,可在IIS 中定义404错误指向一个动态页面,在页面里面使用301永久重定向跳转到新的地址,此时服务器返回301状态码。
2、设置404指向一个设计好的html文件,
此时页面返回的404状态码。
idc提供商基本都提供404设置的功能,直接上传文件设置即可。在IIs中设置方法:打开IIS管理器-->点击要设置自定义404的网站的属性
-->点击自定义错误选项-->选中404页-->选中并打开编辑属性-->设置成 URL --> URL
里填写“/err404.html”-->按确定退出再把做好的err404.html
页面上传到网站根目录下。此处在“消息类型”中一定要选择“文件”或“默认值”,而不要选择“URL”,不然,将导致返回“200”状态码。
3、404指向一个动态页面,
比如error.asp,如果不在页面里面进行设置,仅仅是返回提示的HTML 代码,将导致页面返回200
状态码,这是不正确的,我们可以在显示完提示内容后,增加语句: Response.Status="404 Not Found"
,这样就保证页面返回404状态码。
4、Apache下设置404错误页面。为Apache Server设置404错误页面的方法很简单,只需在.htaccess 文件中加入如下内容即可,ErrorDocument 404 /notfound.php
导致这个错误的原因一般来说,有三种:
1、无法在所请求的端口上访问Web站点。
2、Web服务扩展锁定策略阻止本请求。
3、MIME映射策略阻止本请求。
解决办法:
1. 对于存在的网页内容由于路径改变而导致访问不了时,可在IIS 中定义404错误指向一个动态页面,在页面里面使用301永久重定向跳转到新的地址,此时服务器返回301状态码。
2、设置404指向一个设计好的html文件,
此时页面返回的404状态码。
idc提供商基本都提供404设置的功能,直接上传文件设置即可。在IIs中设置方法:打开IIS管理器-->点击要设置自定义404的网站的属性
-->点击自定义错误选项-->选中404页-->选中并打开编辑属性-->设置成 URL --> URL
里填写“/err404.html”-->按确定退出再把做好的err404.html
页面上传到网站根目录下。此处在“消息类型”中一定要选择“文件”或“默认值”,而不要选择“URL”,不然,将导致返回“200”状态码。
3、404指向一个动态页面,
比如error.asp,如果不在页面里面进行设置,仅仅是返回提示的HTML 代码,将导致页面返回200
状态码,这是不正确的,我们可以在显示完提示内容后,增加语句: Response.Status="404 Not Found"
,这样就保证页面返回404状态码。
4、Apache下设置404错误页面。为Apache Server设置404错误页面的方法很简单,只需在.htaccess 文件中加入如下内容即可,ErrorDocument 404 /notfound.php
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询