swfupload 相关配置

部署在IIS上出现404:

修改 C:\Windows\System32\inetsrv\config\applicationHost.config 文件

连续查找requestFiltering,往下添加一行                        

<requestLimits maxAllowedContentLength="1073741824" />

里面的1073741824=1G。

<requestFiltering>
     <requestLimits maxAllowedContentLength="1073741824" />
     <fileExtensions allowUnlisted="true" applyToWebDAV="true">
       ................
     </fileExtensions>
</requestFiltering>

 或者在本地web.config添加下面代码

<configuration> 
 <system.webServer> 
   <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="1073741824" />
      </requestFiltering>
    </security>
 </system.webServer>
</configuration>

 

 

另一种 404的可能性:

路径要添加绝对路径http://www.xxxx.com/swfupload/…… 或者 http://192.168.1.34/swfupload/……

 flash_url: "http://www.xxxx.com/swfupload/swfupload.swf",
 upload_url:  "http://www.xxxx.com/swfupload/imageUp.ashx",
 button_image_url: "http://www.xxxx.com/swfupload/up.png",

 

Web.Config要添加节点:

maxRequestLength的大小根据自己的需求设置1024000~=1G

  <system.web>
           <httpRuntime maxRequestLength="1024000" executionTimeout="360" requestValidationMode="2.0" />
  </system.web>

post_params 参数的设置:

因SWFUpload上传需要自己开辟Session 所以要在Globals中添加处理

post_params: {
    "ASPSESSID": "<%=Session.SessionID %>",
    "AUTHID": "<%=Request.Cookies[FormsAuthentication.FormsCookieName].Value%>" //微软MemberShip
},

Globals.asax文件添加

Application_BeginRequest内添加

            try
            {
                string session_param_name = "ASPSESSID";
                string session_cookie_name = "ASP.NET_SESSIONID";

                if (HttpContext.Current.Request.Form[session_param_name] != null)
                {
                    UpdateCookie(session_cookie_name, HttpContext.Current.Request.Form[session_param_name]);
                }
                else if (HttpContext.Current.Request.QueryString[session_param_name] != null)
                {
                    UpdateCookie(session_cookie_name, HttpContext.Current.Request.QueryString[session_param_name]);
                }
            }
            catch (Exception)
            {
                HttpContext.Current.Response.StatusCode = 500;
                HttpContext.Current.Response.Write("Error Initializing Session");
            }

            try
            {
                string auth_param_name = "AUTHID";
                string auth_cookie_name = FormsAuthentication.FormsCookieName;

                if (HttpContext.Current.Request.Form[auth_param_name] != null)
                {
                    UpdateCookie(auth_cookie_name, HttpContext.Current.Request.Form[auth_param_name]);
                }
                else if (HttpContext.Current.Request.QueryString[auth_param_name] != null)
                {
                    UpdateCookie(auth_cookie_name, HttpContext.Current.Request.QueryString[auth_param_name]);
                }

            }
            catch (Exception)
            {
                HttpContext.Current.Response.StatusCode = 500;
                HttpContext.Current.Response.Write("Error Initializing Forms Authentication");
            }
        void UpdateCookie(string cookie_name, string cookie_value)
        {
            HttpCookie cookie = HttpContext.Current.Request.Cookies.Get(cookie_name);
            if (cookie == null)
            {
                cookie = new HttpCookie(cookie_name);
                HttpContext.Current.Request.Cookies.Add(cookie);
            }
            cookie.Value = cookie_value;
            HttpContext.Current.Request.Cookies.Set(cookie);
        }

---------------------如果以上都注意了,基本应该没什么问题

 

posted @ 2014-09-28 18:11  ZevFang  阅读(326)  评论(0编辑  收藏  举报