Agramont.net

VP of Mural Consulting...SaaS Strategy & Execution. Accelerated.
Welcome to Agramont.net Sign in | Join | Help
in Search

Conrad Agramont's Blog

July 2006 - Posts

  • Enabling Passive Mode FTP with Windows 2003 and Windows Firewall

    If you have a Windows 2003 Server that has the FTP Service and you’re using Windows Firewall to protect the server, Passive Mode will not function property for the FTP Clients.   I ran into this with a Virtual Server that we have hosted and I couldn’t find an option to enable it.  That’s because Passive and Active modes are always enabled.  What you have to do is open a set of ports for Passive mode to work through the firewall.  The standard FTP port (21) is actually the control port and in Passive Mode, the server controls what port the data will be transmitted between the server and client.  This is something the server tells the client and then the client tries to connect to it.

    I was using Filezilla to connect to the FTP server and it connection (lots of successful commands, including the username and password), but it would stop at the List function.

    So here’s a site that explains all that you need to do to make Passive FTP connection work: http://www.newagedigital.com/cgi-bin/newagedigital/articles/ms-firewall-ftp.html

    Here are some other helpful sites on the matter:

  • HostingCon 2006: Preparing for my session "Windows Server 2003 for Shared Web Hosting"

    I’m finally here in Las Vegas for HostingCon.  My presentation, Windows Server 2003 for Shared Web Hosting", is on Wednesday and I’m still working on my slides.  The general approach that I have for the session is to discuss the thought process that a hoster must go through when planning for a Shared Web hosting offering using Windows.  This spans from the business and marketing planning (e.g. customers and packaging) to the technical implementation (e.g. IIS Settings, ASP.NET, etc.) , and how decisions in both areas impact each other.
    In looking the other sessions and who’s attending, this approach to the session seems to make more sense versus a deep technical discussion on IIS by itself.  However, I’m open to those conversations while I’m there (after the session of course).
    If you’re going to be at HostingCon 2006 in Las Vegas and would like to “hook up”, please shoot me an email so we can schedule some time to meet.

    Conrada (at) go-planet (dot) com

    Here is a link to my session abstract: http://www.hostingcon.com/2006/attend/session-detail.php?id=55

  • Getting started with the Community Server 2.0 SDK for ASP.NET 2.0

    This is short post, but one I thought worthy enough to at least publish.

    I download the Community Server 2.0 SDK (http://communityserver.org/files/folders/releases/entry516270.aspx), unzipped it and when through the normal installation of the CS2 database scripts.  All went pretty well, but it became obvious that something wasn’t working right for me.  See my intent was to use the SDK to customize CS2 for “ASP.NET 2.0” including using the membership, profiles, and roles functionality built into ASP.NET 2.0.  There are actually two different builds (not the SDK) for CS2.  One is compiled for ASP.NET 1.1 (Build # 2.0.60217.2664) and the other is ASP.NET 2.0 (Build # 2.0.60217.2664.2).  These versions only really make it possible for CS2 to run natively in one of the assigned ASP.NET version on the target website.  What’s not obvious in this is the type of membership data structure that is being used.

    As part of the CS2 for ASP.NET 2.0 release, there is an additional SQL Script that is used to change the CS2 database to use the standard ASP.NET 2.0 schema for Membership, Profiles, and Roles.  This build also includes two additional changes.  There are changes in both the communityserver.config and web.config files that define the usage of the ASP.NET 2.0 providers for membership, profiles, and roles versus the ones that come as a part of CS2.  Beyond those items, as far as I can tell, everything else looks about the same.

    So back to the SDK…

    So I wanted to use the ASP.NET 2.0 providers as part of my customization, but it seems that the SDK doesn’t come with that additional update script (<CS Install>\SqlScripts\Upgrade_From_Previous_Versions\CS2.0 UpdateMembership to ASPNET2.SQL).  So I had to pull a copy from the “released” build for ASP.NET 2.0.

    Now once I did this, things still didn’t work the way I wanted.  So I had to also pull a copy of the communityserver.config and web.config files from the release version and into the “web” folder of the SDK.  Once I had that all went well.

    What was also interesting to see is that the communityserver “web” project is not actually a website.  It compiles like a class.  I could still point my IIS site to the “web” directory and all worked as expected.

    Now my next set of tasks is to extend some pages, make some CSModules, and get a better understanding of how it all works.  Maybe I should be a “virtual intern”.  ;)

    More on my latest discoveries to come soon.

    References:

    Updated ---
    After a quick email with David Burke, it appears there were a few key reads that I missed (not surprising).  First, there is some documentation found in a ReadMe.txt file in the “src\CommunityServer.ASPNet20MemberRole” folder in the SDK.  It already includes the SQL script and the config files.  Not sure how I missed that exactly.  It wasn’t noted in the first readme, so I guess I never really looked for it there.  Anyhow, here are some other pointers that David provided:

     

  • Integrating Internet Explorer 7 Search with Community Server 2.0

    Internet Explorer 7 provides a new extensibility model for the search textbox built into the shell.  After reading the documentation I wondered what it would take to integrate it with Community Server 2.0

    First you must define an XML document that provides some information on your site and the "template" that should be used when submiting a search request to your site.

    <?xml version="1.0" encoding="UTF-8"?>
    <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
      <ShortName>Agramont.net</ShortName>
      <Description>Search content on Agramont.net</Description>
      <Contact>agramont@hotmail.com</Contact>
      <Url type="text/html"
           template="http://agramont.net/search/SearchResults.aspx?q={searchTerms}"/>
    </OpenSearchDescription>

    The above file needs to sit on your site somewhere (I suppose it could be on another server, but that’s just kinda funky) as the next step will need to point to this file.
    The next step is to leverage the “Auto Discovery”  feature of Open Search/IE7.  To do this, you must put a “link” tag in your HTML Header and point to your xml file as defined above.

    To do this via Community Server for the entire site, follow the below steps:

    1. Login to Community Server as an administrator
    2. Navigate to  Control Panel > Administration
    3. Within the “Settings” left navigation tab, click on “Site Content”
    4. Enter the below “link” tag into the “Raw Header” text box
    5. Click the Save button

    <link title="Agramont.net Search" type="application/opensearchdescription+xml" rel="search" href="http://agramont.net/provider.xml"></link>

    At this point, you should be good to go.  Due to how Community Server caches setting information, you may need to wait 5 minutes before this goes into affect or you can “touch” the web.config file to force a reload of the CS site.

    To see this at work, visit my site, http://agramont.net/ with Internet Explorer 7 (I tested this with Beta 3) and notice the icon in the textbox “light up”.

    When you click on the search drop-down arrow, you should see the new search provider.

    When you select the new search provider, you'll now see the "Short Name" in the textbox as a visual cue that it worked.

    At this point, your search will only be available when you're currently at your site.  In order to make it available all of the time, the user will need to select your site in the "Add Search Providers" menu.

    Once you do this, Internet Explorer will ask the user if they want this action to take place.

    There's lots more you can do with the Open Search provider XML and you can even trigger the call to add the search provider via an html button and some Javascript, but this should get you on your way.

    References:

  • Community Server 2.0: Adding support for iFrames

    Recently, I signed up to be an Amazon.com Associate and I wanted use this so I could reference books on Amazon that I reviewed using their "buy now" button.  In order to make this work in Community Server, I had to make a small change in the communityserver.config file for my site.

    By default, there are only certain tags that Community Server 2.0 (CS2) will allow you to use within your posts.  It turns out that the Amazon Associate program uses an iframe (as do other referral programs) to display their content on your page and this is one of the tags that CS2 does not allow.  So I simply needed to add that tag to the below file "communityserver.config".  The section below shows what you need to add to the html tag (there's more in that tag)

    <CommunityServer><MarkUp><html>

          ... other tags ...

          <iframe style="true" src="true" marginheight="true" marginwidth="true" frameborder="true" scrolling="true"/>

    </html></MarkUp></CommunityServer>

    You must set the attributes as well and enable them by setting their value to true.  Also, once you upload this file change to your site, it may not take right away.  So you may need to "touch" your web.config file (I just add a space somewhere in the file and save it) as that will reset the ASP.NET application and force it to "reload".

    Perhaps there's more to it than this, but it's a good start.

  • Book Recommendation: Microsoft Exchange Server 2003 Advanced Administration

    The other day I purchased a new book by Jim McBee called, "Microsoft Exchange Server 2003 Advanced Administration".  For any of you that are doing Hosted Exchange, this is a great book once you get through the basics of learning Exchange and need to better understand how the system works and how to troubleshoot it.

     

This Blog

Syndication

Community Tools