Merhabalar.
5 dakikada uydurdum bir şeyler İşini görür.

asp.net ile yapılmış siteye Global.asax dosyası ekliyoruz ve onun içine şu kodları ekliyoruz :

public struct Linkler
        {
            public string Eski;
            public string Yeni;
            public Linkler(string eski, string yeni)
            {
                this.Eski = eski;
                this.Yeni = yeni;
            }
        }

        protected void Application_BeginRequest(object sender, EventArgs e)
        {
            string gelenTalep = Request.RawUrl;
            if (gelenTalep.Length.Equals(1))
            {
                return;
            }

            // Eski ve yeni linkleri ekliyoruz
            List<Linkler> links = new List<Linkler>();
            links.Add(new Linkler() { Eski = "/urun.php?id=45", Yeni = "/urun/televizyon" });
            links.Add(new Linkler() { Eski = "/arsiv/78/sinema", Yeni = "/haber.aspx?id=78" });
            links.Add(new Linkler() { Eski = "/urunler?id=7", Yeni = "/urunler" });

            // Linq sorgusu ile eşleşen kayıdı yakalıyoruz.
            Linkler bulunanLink = links.Where(f => f.Eski.Equals(gelenTalep)).FirstOrDefault();
            if (string.IsNullOrEmpty(bulunanLink.Yeni))
            {
                return;
            }

            // 301 ile yönlendiriyoruz.
            Response.RedirectPermanent(bulunanLink.Yeni, true);
        }