I recently started using CDN Support in WP Super Cache with CDN Sync Tool, Amazon S3, and Amazon CloudFront on my WordPress driven sites. I couldn’t find step-by-step configuration instructions for this combination of tools. I figured it out with only a few initial missteps, but it took longer than I would have liked. I’ve written these instructions in case they might be helpful to someone else in the future.
What Is A CDN and How Can It Help?
CDN stands for Content Delivery Network. By using services like Amazon’s S3 and CloudFront, you can significantly increase your website’s page speed. This is because Amazon has robust servers all over the world that can serve your content much faster than the single shared hosting server that your WordPress site is most likely installed on. When I decided to set up CDN Support, I went with Amazon as my provider because I already had an Amazon S3 account and was familiar with using it. There are other providers offering comparable Content Distribution Network services as well.
How To Implement CDN Support To Speed Up Your WordPress Site
This post assumes that you already have WP Super Cache installed, the latest version of WordPress (currently 3.3.2 while I’m writing this), and a basic understanding of WordPress and plugin configuration.
- If you don’t already have one, sign up for Amazon Web Services.
- Go to the AWS Console, click on the S3 tab, and then click the “Create Bucket” button.

- You can name the bucket anything you want, so long as no other S3 user has created a bucket with that name. I use the domain name of the site it is for. After choosing a name, hit the “create” button.
- Now, you need to get the content that you want hosted into your S3 bucket. One choice is to simply use the “Upload” button and put copies of your files into the bucket. For a totally static site, this could be fine, but for your dynamic WordPress site, you need an easy way to keep your changing files synced between your site and your S3 bucket. This is where the CDN Sync Tool plugin comes into play. Install and activate this plugin.

- Go to the settings page for CDN Sync Tool. First, choose what to sync. By default, it will upload everything in your wp-content/plugin, wp-content/themes, wp-content/uploads, wp-includes/css, wp-includes-images, and wp-includes/js folders and then keep it all synchronized*. If you have other directories, that need to be synced, add them to the “Sync Custom Directory To CDN” box. Be sure to enter the path relative to your WordPress site root. Hint: The CDN Sync Tool seems to sync the folders it expects in wp-content/uploads. If you have created extra folders here through FTP, you need to enter them into the custom directory box.
- Go to the CDN Options tab. Choose Amazon S3 in the dropdown. Go to your AWS Console. Click your name in the top right corner and choose “Security Credentials.” Scroll down the page to “Access Credentials.” You should have an access key there. Copy the Access Key ID and the Secret Access Key to your CDN Sync Tool options. Also enter the bucket name for the bucket you just created.
- On the JS and CSS tabs, I choose to combine my files and I use “wp-content/uploads/cdn” as the save path. Hint: This path will only work if you’ve already created the directory on your server.

- After saving all your options, go back to the Sync tab and click the “Sync” button. This may take some time, especially if you have a large site with a lot of images in your uploads folder. When the sync completes, you’ll see a list of files that were synced.
- At this point, clink through your newly populated S3 bucket to confirm that everything is there. (Click “refresh” if you don’t see the files in your bucket.) You may want to add more folders to the “Sync Custom Directory To CDN” box.” Hints: Confirm that your plugins folder was uploaded. I’ve noticed on two sites now that it wasn’t, even though “Plugin Files” was checked in the Sync tab. Also, I’ve noticed that on large sites, not everything copies over during the initial sync. A large number of my uploaded images didn’t sync on both of the sites I’ve done so far. This may be a problem with my host or something else, I’m not sure. I also got a few error messages that I couldn’t resolve on some random, older files. This may not have been the best solution, but I chose to use Amazon’s “Upload” button to upload those files to my S3 bucket instead of trying to sort out why the tool wasn’t getting them all.
- In your bucket, go to wp-content and right click on the uploads folder. Click “Make Public” in the pop-up menu.

- The next step is to create a distribution for your files in Amazon CloudFront. In the AWS Console, click the CloudFront tab and then click the “Create Distribution” button.
- Delivery Method should be Download. Choose Amazon S3 Origin and choose the appropriate bucket in the dropdown. Click continue. Leave everything on the Distribution Details step as is, unless you wish to create a CNAME (see #13 below). If you plan to create a CNAME, enter it here. Click “Continue” and then “Create Distribution.”

- It isn’t necessary for functionality, but I recommend creating a CNAME for your distribution to maintain cleaner links in your page source. Personally, I use a sub-domain of “cdn.” For example, the CNAME for the distribution I use for this site is cdn.nycgadgetgirl.com.
- Enter the CNAME you wish to use, then click “Continue” and then “Create Distribution.”
- Go to wherever you manage the DNS for your site, most likely your registrar’s website, and add a CNAME record for the CNAME you just used in your distribution setup. For the value, enter the domain name shown in the CloudFront distribution’s properties.

- The last step is to actually enable CDN Support in WP Super Cache! In your WordPress Dashboard. Go to the settings for WP Super Cache and click the CDN tab. Check the “Enable CDN Support” box. Enter the full URL of the CNAME you just created. For example, for this site, I entered http://cdn.nycgadgetgirl.com
- If you synced some directories to your S3 bucket that are outside of wp-includes or wp-content, you should enter them in the “Include directories” field. You can probably leave the other fields as they are. I check the “Skip https URLs to avoid ‘mixed content’ errors” box.
- Click the “Save Changes” button and you’re in business.
*Note: I don’t know yet if it really keeps everything synced as it claims to.
I hope this post helps others configure CDN Support in WP Super Cache. I no longer maintain this site. If you have any questions, try the WordPress forum http://wordpress.org/support/plugin/cdn-sync-tool.
I’ve been drinking the Thesis Koolaid folks. And I like it!
I decided a few days ago that it was time to dust the cobwebs off nycgadgetgirl.com and start lining up some new blog development work for the new year. (I have enough work for current clients now to keep me busy till February.) What better time to delve into the world of Thesis than when I need to re-do my own site?
I decided, for a test, to see how long it would take to re-theme my site using Thesis while keeping all the design elements that I still like (forcing me to figure out all the customization instead of just using it out-of-the-box). Well, I downloaded Thesis on Thursday evening and finished the site on Saturday night, after spending about eight hours on it, including checking all the plugins and removing the ones I no longer need.
Me likey! You’ll be seeing more Thesis development from me.
Luckily, I don’t have to say it’s been many years since I was here.
Last summer I decided, rather suddenly, to take a A Four Year Vacation from NYC. I quit my job, packed my stuff, wrote about What I Will Miss About NYC and What I Will NOT Miss About NYC, loaded up the U-Haul and drove to Indiana. A couple weeks after I arrived, I blogged about the many Wonderful Things I had experienced as I was preparing to leave my NYC life behind.
Well… Indiana didn’t turn out to be quite the vacation I’d hoped for. It was gorgeous and peaceful. I got lots of sleep. The house and yard were awesome. I spent more time with my daughter and my sister. I worked freelance (set my own hours!) and got to spend lots of time with my darling Shiba Inu, Snickers.
But, I was bored. And "real" work wasn’t forthcoming. The cost of living there is low, but not so low that I could stay there four years without a real job!
My first visit home to NYC was in early February, for Westminster. Before I arrived, I reached out to the CEO of a tech firm I’d become acquainted with shortly before moving away. They were hiring. Hmmm…. interesting! I met with them while I was in town for Westminster and by the time I arrived back in Indiana, I was planning my move back east. Three weeks later I was settled into a new job and a new apartment (both of which are right across the Hudson from my old job and apt).
Like the KISS song says… "This place was meant for me!"
I received this email yesterday from Rick and Colleen, who adopted Kaos/Kayla from me a year and a half ago. I wanted to share it because so many of my blog friends helped with rescuing Kayla from Miami Dade Animal Control and taking care of her for six months until she was adopted.
HAPPY BIRTHDAY KAYLA!!
HI EVERYONE RICK HERE. KAYLA IS 3 YEARS OLD! DO YOU BELIEVE IT?? MY WIFE AND I WOULD ONCE AGAIN LIKE TO THANK EVERYBODY INVOLVED IN KAYLA’S LIFE. WE HAVE NO PROBLEMS WITH KAYLA, SHE IS A WONDERFUL PART OF OUR FAMILY. SHE SHE IS WELL ADJUSTED TO OUR FAMILY AND FRIENDS. DAILY WALKS AND CHASING RABBITS IN THE YARD HAVE KEPT HER HEALTHY AND AT A WEIGHT OF 65 LBS!!
THANKS AGAIN RICK AND COLLEEN
Makes ya feel good, doesn’t it?
I received a welcome and gratifying email today. Kayla (the doggy formerly known as Kaos) has been with Rick and Colleen for over a year now. They sent photos, a video and a note saying that she’s happy and healthy and they couldn’t be happier that she is part of their family.
Stuff like that makes it all worth it.

My last few days in NYC were busy and stressful and difficult, but also amazing and illuminating. I spent several days feeling loved, appreciated and valued.
- Wednesday, the 23rd, my boss took me and some coworkers out to dinner.. FOR ME.
Since I expect Japanese food to be something I will desperately miss, we went to one of the top sushi spots in town: BONDST (Bond Street). Sooooooo delicious! It was a unique happening and made me feel super appreciated.
- Thursday, the 24th, was my last day at work and, of course, I worked till 2am trying to finish everything. Wonderful things happened that day too though.
- My boss gave me a "half year bonus!" Who gives you a bonus when you’re leaving? (I almost cried.)
- I got lots of hugs and special words from coworkers one by one as they left for the day.
- Friday, the 25th, was mine and Snick’s last visit to the Gillen Brewer School. (I’ve been stuck at this part of the entry for over a week.) These kids are just amazing. When we started visiting them a few months back, several of them were really afraid of dogs, but when we saw them on the 25th, they were hugging and kissing Snickers goodbye. They made a wonderful card for us (mostly for Snickers. LOL) to say goodbye. This was also when Snickers realized something big was happening, because he could feel the energy from the kids. I am going to miss our school visits very, VERY much.
- The rest of Friday I packed. Or at least I tried to.
- Saturday, the 26th… mine and Snick’s last time to enjoy our regular weekend routine. We dropped off laundry, picked up coffee, went to the dog run and hung out on our bench. We went to the Hell’s Kitchen Flea Market to hang with our friend Judy for a bit and then off to the neighborhood pet store for TREATS. This routine has been a shared favorite part of the week for a long time.
- Saturday afternoon was our last meetup with the NYC Shiba Inus and their Human Companions. For anyone who may not know, Snick and I founded this meetup group in June 2006 and it’s grown to 240+ members and had 50 meetups. NYCSR was founded by a group of Shiba-owned humans who met in the meetup group and the group continues to support NYCSR in many ways. Some of my BEST BESTEST friends are people I met through this group and I owe a lot of happy times to them, the group, and NYCSR. About 40 people and 25 Shibas showed up for our last meetup at Animal Haven and Snickers had SO MUCH FUN. What I was NOT expecting though was for most of the Board of Directors and key volunteers of NYCSR to be there and have gifts for us. They gave me one of those digital photo frames and they had preloaded it with a slide show of ALL the NYCSR rescue dogs so far. It was incredible. They brought a treasure chest of treats and toys for Snick also and he loved all of it. All of it really touched me and showed me that Snick’s impact on people’s (and Shibas’) lives extends way beyond just me.
- For the rest of Saturday, I packed. And packed. And PACKED.
- Sunday, the 27th. Moving Day. After about 3 hours sleep, Snick and I dashed to the dog run and back and then I was off to pick up the U-Haul. My bestest buddy Zennia and her fiance, Scott, met me at the U-Haul place in Chelsea so Scott could help park the truck back at my apartment. Long story short… we got back to the apartment around 9:45 AM and my other peeps started showing up around 10am to help. Besides Z and Scott (and 2 paid helper guys), I had my good buddy Brian, my wonderful friend Mary, another wonderful friend lulu and her main man Joseph, my good neighborhood friend Drew (the human “dad” of Snick’s buddies Benno and Lily), and last but but never least, my best friend - who I’m "maybe just a little bit in love with" - Jack. Having so many friends come over to help me finish packing and move (out of a FIFTH floor WALKUP) really meant a lot to me. I love all you guys. THANK YOU so much for being there.
So, those were my last few days in NYC. They were filled with friends and love and good things and I’m very grateful for that.
PS I know I haven’t been blogging much since I moved. My life/world is just sooo different now and I miss my friends desperately. I will probably set up a new blog for inspiration. When the words return, I’ll blog. I promise.
- Men peeing in public
- The smell of subway station stairways on a hot, summer day
- Movie sets. Freaking movie people filming “on location” and getting in the way of real life
- Getting parking tickets outside my apartment whenever I rent a car
- Noise, noise, and more noise. Construction noise. 18-wheel truck noise.
- Making sure Snick dodges vomit on the sidewalk during our late night weekend walks
- Salt and slush everywhere when it snows
- The difficulty of traveling locally with Snickers
- Tourists!!!
Like before, that’s just off the top of my head.
- Most of all… my friends, of course: work friends, Shiba friends, neighborhood friends, miscellaneous friends
- Meeting random new, interesting people at least once a week when I’m out with Snickers. I doubt that many people are out and about at 11pm in the suburbs of Indianapolis.
- The not so random, wonderful people I get to meet during the course of living life in this crazy place
- The canine community
- The smell of honey roasted cashews in the winter
- NYC holiday shopping
- The radio morning show I listen to each morning
- The community dog run and garden where I’ve met so many of my neighborhood friends over the years
- The variety of food choices, from street meat to gourmet restaurants
- 24 hour take out
- The wonderful kids at The Gillen Brewer School where Snick and I have been lucky enough to visit on Friday mornings
- The ease of taking a cab and not having to deal with parking
- Long holiday weekend when no one is around
- The ten minute commute (walk) to work each day
- Living at the center of the universe
And that’s just off the top of my head!
At least that is how I am thinking of it. Let’s please not call it “leaving NYC.”
<sigh>
I moved here 21 years ago, still a teenager and totally in awe of everything around me. I made the mistake of leaving in 1991 and spent the next few years desperately trying to find my way home from SoCal and then MS. In 1995, I landed back in midtown Manhattan and swore I would never make the mistake of leaving again. Over the years, the city has become an inextricable part of who I am. Sometimes it feels like the city has woven itself into me. It’s not a "place." It is more of a being. NYC is a friend and it is home.
Although there are many things I love about NYC, it’s a tiring, expensive, and challenging place to be a single parent. As most of you probably know, Miss T went to Florida last summer to live with her dad. The choice was hers regarding whether to stay there for high school or come home. At first, she said she wanted to stay in Florida, but then she decided a few months ago that high school in Florida was not in her plans. Since then, I’ve been trying to figure out what to do about a bigger place to live and a decent place to enroll her in school. (She was in private school up until the year before she went to Florida. We tried one year of NYC public school and it was horrendous.) I really can’t afford to put her back in private school for four more years or to move to a neighborhood with a rocking public high school. (There are specialty public high schools, but the application and enrollment process takes a year and a half.)
What’s a single mom in the city to do?
[click to continue…]
Almost a year and a half after Kaos landed in the Miami Dade shelter, Benedict finally called. He didn’t call me, so I wasn’t able to ask him what the hell happened to him. He called one of the other people from the neighborhood that helped him and Kaos get to Florida back in Nov 2006.
Apparently he has been back in New York for two months. He’s living in the Bronx with his girlfriend and working as a painter. He told her he’d given Kaos to a family in Florida! She told him not to lie and told him about the time/effort/money spent to save Kaos from the shelter.
It’s a bit frustrating that he would lie about what happened to Kaos, but it is nice to know he’s alive and well. I’d pretty much given up on ever knowing what happened to him.
PS I got an email from Kaos - now Kayla’s - new family a couple weeks ago and she’s doing great. They sent video of her running around in the back yard and she looked sooooo happy.