Global.asax Works On Local Computer But Not After Publish To Server?
Sep 5, 2010
i think this has been asked before but i just cannot figure this one out.
I have added a global.asax file to my project (using asp.net with c# from vs2010) and works great on my local machine. then when i publish to our site (i publish to ftp site and then copy from the ftp folder into the site folder overwriting old files) and it doesn't work... at all. i am using 'windows server 2008 R2 Enterprise'.
i have written in the "Application_BeginRequest" Method that the header of every HTTP Request will be analyzed.
It only works when i visit the myip/default.aspx site. But when i want to visit any other site there will be no entry in the database or in the listbox (the listbox is only for me to see what happens)It runs on an IIS 5.1.
I also changed in the IIS Settings the ASP.NET from 2.0 to 4.0. Do i need to configure the IIS 5.1 to use the global.asax.cs on every url?
I thought the global.asax.cs runs on every site on the webserver.
I just bought an old domain name and am looking to redirect as many old URLs as possible to acquire backlinks intended for the original owner for pagerank reasons. The original site had a lot of static pages ending in .htm which need to be redirected to directories. I use httpcontext in my Global.asax file to initiate 301 redirects and this works great on folder names or .aspx files, but whenever I try to redirect a .htm it fails.
Sample code:
if (HttpContext.Current.Request.Url.ToString().ToLower().Contains("http://www.example.com/oldpage.htm")) { HttpContext.Current.Response.Status = "301 Moved Permanently";[code]....
I also tried using my Parallels H-Sphere interface provided by my hosting company to do a IIS redirect, but whenever I hit submit the page just starts an infinate loop of sending a request.
I have a hosted site and just added some additional error notification to my global.asax file and works like a charm. I decided to add the same logic to our test server and it doesnt work. The server.transfer never happens and the email never gets updated. Now i know the email works on the test and production server since we have other pages that use the same SMTP server name and setup as i have in the global file. Below is my code as it is in the file now. I setup a test page to cause an error and the page displays the detailed error which we dont want. But i would like to be notified if this happens. What am i missing? I can only assume that its a IIS confige issue, since the exact same code works on a hosted site, but not at work on our test or production servers. Here is the code i have in the global.asax
I am having some trouble with an ASP.NET website I've set up and it's very difficult to debug.Background Information:There is a page on my website that allows the user to upload one or many Microsoft Word documents. The user can then press a button, and the code is supposed to open the document(s), count the words, and then return the number of words in a table.This works perfectly fine when I am in Visual Studio running the debugger, however when I try to do it over the web from another computer, I get an error.
try { String file = this.lstFileBox.Items[i].Text; // MicrosoftWordOperations is a custom class MicrosoftWordOperations wordOps = new MicrosoftWordOperations(file); String contents = wordOps.GetContents(); int numWords = wordOps.CountWords(contents); [code]...
I'm using the HttpRunTime.Cache.Add to create a routine that runs every 5 mins to post data out of my app to the main DB, and this works fine. However I also need to import some files from disk in this routine. I have my document directory set up in my web.config as a ~/ relative path and resolve this in normal controller actions using Server.MapPath(string). How can I do this in my Global.asax.cs code -when I try to access it, it throws an error?
I have a custom error handler in the global.asax's Application_Error method, when an error occurs I use the following code to transfer user to the error page:Server.Transfer("/Error/");
However without specifying the actual page name the code above breaks with "Error executing child request for /Error/" exception.So if I use Server.Transfer("/Error/Default.aspx") it works fine with no problems.Also using Response.Redirect("/Error/") works fine too, however we want to keep using Server.Transfer to retain URL displayed in the address bar when the error page is displayed so users can simply refresh the page to retry accessing the original offending URL.Would be grateful if anyone can comment on how to get the Server.Transfer method working without specifying the actual aspx page name.
I've got an website running on a third-party hosting server. Now I've got a few objects in global asax. But once in like 6 hours or so (didn't really check how long) the object gets reset to default values.Is this an problem in global asax that it reset's himself or is this the server on which I'm hosting?
I want to protect one file in a subdirectory with Global.asax. (I know that this isn't the conventional way of going about this) but it works on my computer and not on the server.I have a global.asax file in my root dir and Application_BeginRequest checks if the user is requesting a particular file. If they are logged in, it allows access. If they are not logged in they are redirected to the default page.My problem is this: My code works on my personal computer but does not work on the server. Do I have to configure a setting in the web.config or adjust something on the server? Code:
Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs) Dim fullOrigionalpath As String = Request.Url.ToString.ToLower 'PROTECTED FILE If fullOrigionalpath.Contains("/uploads/groups.xls") Then If HttpContext.Current.User.Identity.IsAuthenticated = False Then Response.Redirect("~/login.aspx") End If End Sub
I know there is a couple answered questions on here regarding "request scoped" globals, but I want to nit-pick on something specifically and maybe squeeze some extra enlightenment out of one or two of you.I have an ASP.NET C# Website and a static Dictionary of objects (loaded from DB once on Application start). Each page request will need to do a lookup in the Dictionary (based on a key derived from the request url/etc) and get the appropriate object.The issue is I'm trying to maximize efficiency by reducing the lookups to the Dictionary per Request. Doing just a single lookup within a Page itself is easy enough and I can pass the object to sub controls, etc too.. but global.asax is separate from the Page and it also needs to use the object (in Application_BeginRequest and Session_Start).
So is doing a Dictionary lookup once in Application_BeginRequest, once (when necessary) in Session_Start and once in the Page negligible speed wise, even if there are many requests coming in every second?I would like it if I could just have a Request scoped global variable that I can easily call upon.. the only one I see available though is HttpContext.Current.Items and that is a Dictionary itself.Am I beingridiculously nit-picky with my concern over efficiency? or will these milliseconds (nanoseconds?) get me in the long run when more and more requests are being made?
PS. I currently only have around 100 objects in the Dictionary although this may increase in the future.
I have the same issue, I have added the On before the Application start, or Session Start and it is still not working.Application_OnStart or Application_Start is not firingSession_OnStart or Session_Start is not firing..Note that in my development environment it is firing (both of the names).When I am adding the Global.asax file, there is only one file (no .cs file). And when I am publishing the project, I am not getting the Global.asax file, I am getting a xxxxGlobal.asax.dll file on my bin folder...
I'm using VS2010 and on my local machine, using web.config to map one url to another works fine, using the tag. However, as soon as I upload to the IIS6 server it doesn't work at all! Is there something about IIS6 that doesn't support this feature?
I created a website using VS2010. When I run the website using built-in web server, everything works fine. The website recognizes javascript and aurigma uploader. When I publish the website to local folder and tried to access using IIS 5.1 on local pc, the java scipt files did not work. I was getting yellow triangle sign at the bottom of the page indicating the object is expected. I tried to look online but i could not find any answer. I have included jquery and javascript file in the header section of master
I have used a dll named MARCEngine, which is used to read Marc data. I use a method named MARC2MARC21XML which converts a normal marc file to an XML file.
The problem is it works great on my local IIS, but when I upload it to the production server, it only generates the root node and not the child nodes.
Here is a snippet of my sample page :
[Code]....
Asp.net has the permissions to access the files geneated.
URL....I used above code to send Confirmation-email but below error happen..The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required. Learn more at...An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. System.Net.Mail. Smtp Exception: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required. Learn more atSource Error:
Line 87: smtp.Credentials = NetworkCred; Line 88: smtp.Port = 587; Line 89: smtp.Send(mm); Line 90: } Line 91:
I have html editor on page, ajax 3.5. I can save Editor.Content to xml file without problem, after I publish to server machine, It refused to work for me.
my page directive set to ValidateRequest = false and EnableEvenValidate = false and AutoEventWireUp = false, no UpdatePanel used around Editor and update button. on code behind which is button click event.
Dim docInfo.Load(Server.MapPath(xmlInfoFilePath)) docInfo As New System.Xml.XmlDocument() Dim ndInfo As System.Xml.XmlNode ndInfo = docInfo.SelectSingleNode("/info/business[@user='" & User.Identity.Name & "']") If ndInfo IsNot Nothing Then ndInfo.Attributes("description").Value = Editor.Content docInfo.Save(Server.MapPath(xmlInfoFilePath)) End If docInfo = Nothing
This button click generate an error on server side. I guess the problem Editor.Content have hidden tags, the server refuse to accept, but what is real problem.
I am having a webmethod that returns some data.I'm using jquery to call that function with its Content type specified as XML.The problem is that it is working on local machine but not on server.The code i'm using is:
var arrInputs = pnl.getElementsByTagName("input"); str = arrInputs[0].value; $.ajax({[code]....
Ajaxfinish is defined afterwards and it works fine on local.Is there some more settings i need to do to make it executable
I am using the following Web method.. its work fast on local host , but on Domain hosted server .. its works odd , i;e; some time its work fast about (1-3 sec) and some take about 10-14 sec to process.. how do i make it work properly and fast..
here is my code
[WebMethod] public static string DisplayMessage(string name, string price,string obj, string id) { SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["eshopConnectionString"].ConnectionString); //Creating Delay""
The old school way is to copy and paste and the files.. so we don't want that anymore..
So I notice VS2010 has 'Publish'... Should I use file system and just create a shared drive on the VM and publish that way?? Should I FTP and set up FTP on the VM FTP server? Should I use web deploy?? But that seems to be made for commercial web hosting ?
Is it possible in the global.asax file on session_start to check if a url string exists and it it does insert the string into a sql database? The url would be something link http://www.mysite.com?campaign=january.
I would want to capture the january bit and put that in the database for each visitor that uses that url.
I wanted to run a .net application on a laptop. I created the application(aspx pages and SQL database) on a computer that has VS 08 installed. Now i wanted to run this application on a laptop that does not have SQL sever 2005 installed.
As far as the aspx pages if i publish them to a zip drive copy it to my laptop and go into IIS and define a new virtual directory to point where my pages are that should work RIGHT??
Now for the database i don't know what i need to do