Tải bản đầy đủ (.pdf) (387 trang)

Wrox professional search engine optimization with PHP apr 2007

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (8.03 MB, 387 trang )

Professional
Search Engine
Optimization with PHP
A Developer’s Guide to SEO
Jaimie Sirovich
Cristian Darie
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page iii
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page ii
Professional
Search Engine
Optimization with PHP
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page i
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page ii
Professional
Search Engine
Optimization with PHP
A Developer’s Guide to SEO
Jaimie Sirovich
Cristian Darie
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page iii
Professional Search Engine Optimization with PHP:
A Developer’s Guide to SEO
Published by
Wiley Publishing, Inc.
10475 Crosspoint Boulevard
Indianapolis, IN 46256
www.wiley.com
Copyright © 2007 by Wiley Publishing, Inc., Indianapolis, Indiana
Published simultaneously in Canada
ISBN: 978-0-470-10092-9


Manufactured in the United States of America
10 9 8 7 6 5 4 3 2 1
Library of Congress Cataloging-in-Publication Data:
Sirovich, Jaimie, 1981-
Professional search engine optimization with PHP : a developer's guide to SEO / Jaimie Sirovich, Cristian Darie.
p. cm.
Includes index.
ISBN 978-0-470-10092-9 (pbk.)
1. PHP (Computer program language) 2. Web sites Design. 3. Search engines. I. Darie, Cristian. II. Title.
QA76.73.P224S525 2007
005.13'3 dc22
2007003317
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by
any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under
Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the
Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center,
222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permis-
sion should be addressed to the Legal Department, Wiley Publishing, Inc., 10475 Crosspoint Blvd., Indianapolis,
IN 46256, (317) 572-3447, fax (317) 572-4355, or online at />LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE NO
REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE
CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING WITHOUT
LIMITATION WARRANTIES OF FITNESS FOR A PARTI CULAR PURPOSE. NO WARRANTY MAY BE CREATED
OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CONTAINED
HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE UNDERSTAND-
ING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHER PRO-
FESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A COMPETENT
PROFESSIONAL PERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NOR THE AUTHOR SHALL
BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION OR WEBSITE IS
REFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FURTHER INFORMA-
TION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THE INFORMATION THE

ORGANIZATION OR WEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READ-
ERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR
DISAPPEARED BETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.
For general information on our other products and services please contact our Customer Care Department within
the United States at (800) 762-2974, outside the United States at (317) 572-3993
or fax (317) 572-4002.
Trademarks: Wiley, the Wiley logo, Wrox, the Wrox logo, Programmer to Programmer, and related trade dress are
trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other
countries, and may not be used without written permission. Microsoft and Excel are registered trademarks of
Microsoft Corporation in the United States and/or other countries. All other trademarks are the property of their
respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be
available in electronic books.
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page iv
About the Authors
Jaimie Sirovich is a search engine marketing consultant. He works with his clients to build them power-
ful online presences. Officially Jaimie is a computer programmer, but he claims to enjoy marketing much
more. He graduated from Stevens Institute of Technology with a BS in Computer Science. He worked
under Barry Schwartz at RustyBrick, Inc., as lead programmer on e-commerce projects until 2005. At
present, Jaimie consults for several organizations and administrates the popular search engine market-
ing blog, SEOEgghead.com.
Cristian Darie is a software engineer with experience in a wide range of modern technologies, and the
author of numerous books and tutorials on AJAX, ASP.NET, PHP, SQL, and related areas. Cristian cur-
rently lives in Bucharest, Romania, studying distributed application architectures for his PhD. He’s get-
ting involved with various commercial and research projects, and when not planning to buy Google, he
enjoys his bit of social life. If you want to say “Hi,” you can reach Cristian through his personal web site
at .
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page v
Credits
Acquisitions Editor

Kit Kemper
Developmental Editor
Kenyon Brown
Technical Editor
Bogdan Brinzarea
Production Editor
Angela Smith
Copy Editor
Kim Cofer
Editorial Manager
Mary Beth Wakefield
Production Manager
Tim Tate
Vice President and Executive Group Publisher
Richard Swadley
Vice President and Executive Publisher
Joseph B. Wikert
Compositor
Laurie Stewart, Happenstance Type-O-Rama
Proofreader
Ian Golder
Indexer
Melanie Belkin
Anniversary Logo Design
Richard Pacifico
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page vi
Acknowledgments
The authors would like to thank the following people and companies, listed alphabetically, for their
invaluable assistance with the production of this book. Without their help, this book would not have
been possible in its current form.

Dan Kramer of Volatile Graphix for generously providing his cloaking database to the public — and even
adding some data to make our cloaking code examples work better.
Kim Krause Berg of The Usability Effect for providing assistance and insight where this book references
usability and accessibility topics.
MaxMind, Inc., for providing their free GeoLite geo-targeting data — making our geo-targeting code
examples possible.
Several authors of WordPress plugins including Arne Brachhold, Lester Chan, Peter Harkins, Matt Lloyd,
and Thomas McMahon.
Family and friends of both Jaimie and Cristian — for tolerating the endless trail of empty cans of
(caffeinated) soda left on the table while writing this book.
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page vii
00929ffirs.qxd:00929ffirs 3/13/07 10:36 AM Page viii
Contents
Acknowledgments vii
Introduction xvii
Chapter 1: You: Programmer and Search Engine Marketer 1
Who Are You? 2
What Do You Need to Learn? 3
SEO and the Site Architecture 4
SEO Cannot Be an Afterthought 5
Communicating Architectural Decisions 5
Architectural Minutiae Can Make or Break You 5
Preparing Your Playground 6
Installing XAMPP 7
Preparing the Working Folder 8
Preparing the Database 11
Summary 12
Chapter 2: A Primer in Basic SEO 13
Introduction to SEO 13
Link Equity 14

Google PageRank 15
A Word on Usability and Accessibility 16
Search Engine Ranking Factors 17
On-Page Factors 17
Visible On-Page Factors 18
Invisible On-Page Factors 20
Time-Based Factors 21
External Factors 22
Potential Search Engine Penalties 26
The Google “Sandbox Effect” 26
The Expired Domain Penalty 26
Duplicate Content Penalty 27
The Google Supplemental Index 27
Resources and Tools 28
Web Analytics 28
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page ix
x
Contents
Market Research 29
Researching Keywords 32
Browser Plugins 33
Community Forums 33
Search Engine Blogs and Resources 34
Summary 35
Chapter 3: Provocative SE-Friendly URLs 37
Why Do URLs Matter? 38
Static URLs and Dynamic URLs 38
Static URLs 39
Dynamic URLs 39
URLs and CTR 40

URLs and Duplicate Content 41
URLs of the Real World 42
Example #1: Dynamic URLs 42
Example #2: Numeric Rewritten URLs 43
Example #3: Keyword-Rich Rewritten URLs 44
Maintaining URL Consistency 44
URL Rewriting 46
Installing mod_rewrite 48
Testing mod_rewrite 49
Introducing Regular Expressions 54
URL Rewriting and PHP 60
Rewriting Numeric URLs with Two Parameters 61
Rewriting Keyword-Rich URLs 64
Building a Link Factory 66
Pagination and URL Rewriting 72
Rewriting Images and Streaming Media 72
Problems Rewriting Doesn’t Solve 75
A Last Word of Caution 75
Summary 76
Chapter 4: Content Relocation and HTTP Status Codes 77
HTTP Status Codes 78
Redirection Using 301 and 302 79
301 81
302 82
Removing Deleted Pages Using 404 83
Avoiding Indexing Error Pages Using 500 84
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page x
xi
Contents
Redirecting with PHP and mod_rewrite 84

Using Redirects to Change File Names 85
URL Correction 89
Dealing with Multiple Domain Names Properly 90
Using Redirects to Change Domain Names 90
URL Canonicalization: www.example.com versus example.com 91
URL Canonicalization: /index.php versus / 92
Other Types of Redirects 94
Summary 94
Chapter 5: Duplicate Content 95
Causes and Effects of Duplicate Content 96
Duplicate Content as a Result of Site Architecture 96
Duplicate Content as a Result of Content Theft 96
Excluding Duplicate Content 97
Using the Robots Meta Tag 97
robots.txt Pattern Exclusion 99
Solutions for Commonly Duplicated Pages 103
Print-Friendly Pages 103
Navigation Links and Breadcrumb Navigation 104
Similar Pages 106
Pages with Duplicate Meta Tag or Title Values 106
URL Canonicalization 106
URL-Based Session IDs 107
Other Navigational Link Parameters 107
Affiliate Pages 108
Redirecting Parameterized Affiliate URLs 109
Summary 118
Chapter 6: SE-Friendly HTML and JavaScript 119
Overall Architecture 120
Search Engine–Friendly JavaScript 120
JavaScript Links 121

DHTML Menus 121
Popup Windows 121
DHTML Popup Windows 129
Crawlable Images and Graphical Text 129
Search Engine–Friendly HTML 140
HTML Structural Elements 141
Copy Prominence and Tables 141
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page xi
xii
Contents
Frames 144
Using Forms 144
Using a Custom Markup Language to Generate SE-Friendly HTML 145
Flash and AJAX 149
The Blended Approach 149
Summary 150
Chapter 7: Web Feeds and Social Bookmarking 151
Web Feeds 151
RSS and Atom 152
Creating RSS Feeds 154
Syndicating RSS and Atom Feeds 160
Other Sources of Syndicated Content 164
Social Bookmarking 164
Summary 172
Chapter 8: Black Hat SEO 173
What’s with All the Hats? 174
Bending the Rules 175
Technical Analysis of Black-Hat Techniques 176
Attack Avoidance 177
HTML Insertion Attacks 177

Avoiding Comment Attacks Using Nofollow 180
Sanitizing User Input 184
Requesting Human Input 188
301 Redirect Attacks 194
Content Theft 196
On Buying Links 197
Digital Point Co-op, Link Vault 197
Summary 197
Chapter 9: Sitemaps 199
Traditional Sitemaps 199
Search Engine Sitemaps 200
Using Google Sitemaps 201
Using Yahoo! Sitemaps 203
Generating Sitemaps Programmatically 203
Informing Google about Updates 208
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page xii
xiii
Contents
The Sitemaps.org Standard Protocol 209
Summary 210
Chapter 10: Link Bait 211
Hooking Links 211
Informational Hooks 212
News Story Hooks 212
Humor/Fun Hooks 212
Evil Hooks 212
Traditional Examples of Link Bait 213
Interactive Link Bait: Put on Your Programming Hardhat! 213
Case Study: Fortune Cookies 214
Summary 218

Chapter 11: Cloaking, Geo-Targeting, and IP Delivery 219
Cloaking, Geo-Targeting, and IP Delivery 219
More on Geo-Targeting 220
A Few Words on JavaScript Redirect Cloaking 221
The Ethical Debate on Cloaking 221
Cloaking Dangers 222
Using the Meta Noarchive Tag 222
Implementing Cloaking 223
Cloaking Case Studies 232
Rendering Images as Text 233
Redirecting Excluded Content 233
Feeding Subscription-Based Content Only to Spiders 233
Disabling URL-Based Session Handling for Spiders 234
Other Cloaking Implementations 234
Implementing Geo-Targeting 234
Summary 241
Chapter 12: Foreign Language SEO 243
Foreign Language Optimization Tips 243
Indicating Language and Region 244
Server Location and Domain Name 244
Include the Address of the Foreign Location if Possible 245
Dealing with Accented Letters (Diacritics) 245
Foreign Language Spamming 248
Summary 248
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page xiii
xiv
Contents
Chapter 13: Coping with Technical Issues 249
Unreliable Web Hosting or DNS 249
Changing Hosting Providers 250

Cross-Linking 251
SEO-Aware Split Testing 253
Detecting Broken Links 254
Summary 259
Chapter 14: Case Study: Building an E-Commerce Store 261
Establishing the Requirements 262
Implementing the Product Catalog 262
Summary 281
Chapter 15: Site Clinic: So You Have a Web Site? 283
1. Creating Sitemaps 284
2. Creating News Feeds 284
3. Fixing Duplication in Titles and Meta Tags 284
4. Getting Listed in Reputable Directories 284
5. Soliciting and Exchanging Relevant Links 285
6. Buying Links 285
7. Creating Link Bait 285
8. Adding Social Bookmarking Functionality 286
9. Starting a Blog and/or Forum 286
10. Dealing with a Pure Flash or AJAX Site 286
11. Preventing Black Hat Victimization 286
12. Examining Your URLs for Problems 287
13. Looking for Duplicate Content 287
14. Eliminating Session IDs 287
15. Tweaking On-page Factors 287
Summary 288
Chapter 16: WordPress: Creating an SE-Friendly Blog 289
Installing WordPress 290
Turning On Permalinks 293
Akismet: Preventing Comment Spam 294
Sociable: Social Bookmarking Icons 295

WP-Email: Email a Friend 296
Chicklet Creator Plugin 298
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page xiv
xv
Contents
Sitemap Generator Plugin 299
Google Sitemaps Plugin 301
Digg Button Plugin 304
Pagerfix Plugin 305
Eliminating Duplicate Content 307
Pull-downs and Excluding Category Links 308
Excerpting Article Content 309
Making the Blog Your Home Page 309
Summary 310
Appendix A: Simple Regular Expressions 311
Matching Single Characters 312
Matching Sequences of Characters That Each Occur Once 317
Introducing Metacharacters 319
Matching Sequences of Different Characters 324
Matching Optional Characters 326
Matching Multiple Optional Characters 328
Other Cardinality Operators 332
The * Quantifier 332
The + Quantifier 334
The Curly-Brace Syntax 336
The {n} Syntax 336
The {n,m} Syntax 337
{0,m} 337
{n,m} 339
{n,} 340

Glossary 343
Index 351
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page xv
00929ftoc.qxd:00929ftoc 3/13/07 2:02 PM Page xvi
Introduction
Welcome to Professional Search Engine Optimization with PHP: A Developer’s Guide to SEO!
Search engine optimization has traditionally been the job of a marketing staff. With this book, we examine
search engine optimization in a brand new light, evangelizing that SEO should be done by the program-
mer as well.
For maximum efficiency in search engine optimization efforts, developers and marketers should work
together, starting from a web site’s inception and technical and visual design and moving throughout
its development lifetime. We provide developers and IT professionals with the information they need
to create and maintain a search engine–friendly web site and avoid common pitfalls that confuse search
engine spiders. This book discusses in depth how to facilitate site spidering and discusses the various
technologies and services that can be leveraged for site promotion.
Who Should Read This Book
Professional Search Engine Optimization with PHP: A Developer’s Guide to SEO is mainly geared toward web
developers, because it discusses search engine optimization in the context of web site programming. You
do not need to be a programmer by trade to benefit from this book, but some programming background
is important for fully understanding and following the technical exercises.
We also tried to make this book friendly for the search engine marketer with some IT background who
wants to learn about a different, more technical angle of search engine optimization. Usually, each chap-
ter starts with a less-technical discussion on the topic at hand and then develops into the more advanced
technical details. Many books cover search engine optimization, but few delve at all into the meaty tech-
nical details of how to design a web site with the goal of search engine optimization in mind. Ultimately,
this book does just that.
Where programming is discussed, we show code with explanations. We don’t hide behind concepts
and buzzwords; we include hands-on practical exercises instead. Contained within this reference are
fully functional examples of using XML-based sitemaps, social-bookmarking widgets, and even work-
ing implementations of cloaking and geo-targeting.

What Will You Learn from this Book?
In this book, we have assembled the most important topics that programmers and search engine marketers
should know about when designing web sites.
00929flast.qxd:00929flast 3/13/07 10:37 AM Page xvii
At the end of Chapter 1, You: Programmer and Search Engine Marketer, you create the environment
where you’ll be coding away throughout the rest of the book. Programming with PHP can be tricky at
times; in order to avoid most configuration and coding errors you may encounter, we will instruct you
how to prepare the working folder and your MySQL database.
If you aren’t ready for these tasks yet, don’t worry! You can come back at any time, later. All
programming-related tasks in this book are explained step by step to minimize the chances that
anyone gets lost on the way.
Chapter 2, A Primer in Basic SEO, is a primer in search engine optimization tailored for the IT profes-
sional. It stresses the points that are particularly relevant to the programmer from the perspective of the
programmer. You’ll also learn about a few tools and resources that all search engine marketers and web
developers should know about.
Chapter 3, Provocative SE-Friendly URLs, details how to create (or enhance) your web site with improved
URLs that are easier for search engines to understand and more persuasive for their human readers. You’ll
even create a URL factory, which you will be able to reuse in your own projects.
Chapter 4, Content Relocation and HTTP Status Codes, presents all of the nuances involved in using
HTTP status codes correctly to relocate and indicate other statuses for content. The proper use of these
status codes is essential when restructuring information on a web site.
Chapter 5, Duplicate Content, discusses duplicate content in great detail. It then proposes strategies for
avoiding problems related to duplicate content.
Chapter 6, SE-Friendly HTML and JavaScript, discusses search engine optimization issues that present
themselves in the context of rendering content using HTML, JavaScript and AJAX, and Flash.
Chapter 7, Web Feeds and Social Bookmarking, discusses web syndication and social bookmarking.
Tools to create feeds and ways to leverage social bookmarking are presented.
Chapter 8, Black Hat SEO, presents black hat SEO from the perspective of preventing black hat victim-
ization and attacks. You may want to skip ahead to this chapter to see what this is all about!
Getting the Most Out of this Book

You may choose to read this book cover-to-cover, but that is strictly not required.
We recommend that you read Chapters 1–6 first, but the remaining chapters can be
perused in any order. In case you run into technical problems, a page with chapter-
by-chapter book updates and errata is maintained by Jaimie Sirovich at
http://
www.seoegghead.com/seo-with-php-updates.html
. You can also search for
errata for the book at
www.wrox.com, as is discussed later in this introduction.
If you have any feedback related to this book, don’t hesitate to contact either Jaimie
or Cristian! This will help to make everyone’s experience with this book more pleasant
and fulfilling.
Introduction
xviii
00929flast.qxd:00929flast 3/13/07 10:37 AM Page xviii
Chapter 9, Sitemaps, discusses the use of sitemaps — traditional and XML-based — for the purpose of
improving and speeding indexing.
Chapter 10, Link Bait, discusses the concept of link bait and provides an example of a site tool that could
bait links.
Chapter 11, Cloaking, Geo-Targeting, and IP Delivery, discusses cloaking, geo-targeting, and IP Delivery.
It includes fully working examples of all three.
Chapter 12, Foreign Language SEO, discusses search engine optimization for foreign languages and the
concerns therein.
Chapter 13, Coping with Technical Issues, discusses the various issues that an IT professional must
understand when maintaining a site, such as how to change web hosts without potentially hurting
search rankings.
Chapter 14, Case Study: Building an E-Commerce Store, rounds it off with a fully functional search
engine–optimized e-commerce catalog incorporating much of the material in the previous chapters.
Chapter 15, Site Clinic: So You Have a Web Site?, presents concerns that may face a preexisting web
site and suggests enhancements that can be implemented in the context of their difficulty.

Lastly, Chapter 16, WordPress: Creating an SE-Friendly Blog, documents how to set up a search
engine–optimized blog using WordPress 2.0 and quite a few custom plugins.
We hope that you will enjoy reading this book and that it will prove useful for your real-world search
engine optimization endeavors!
Contacting the Authors
Jaimie Sirovich can be contacted through his blog at . Cristian Darie can
be contacted from his web site at
.
Conventions
To help you get the most from the text and keep track of what’s happening, we’ve used a number of
conventions throughout the book.
Tips, hints, tricks, and asides to the current discussion are offset and placed in italics like this.
Boxes like this one hold important, not-to-be forgotten information that is directly
relevant to the surrounding text.
Introduction
xix
00929flast.qxd:00929flast 3/13/07 10:37 AM Page xix
As for styles in the text:
❑ We highlight new terms and important words when we introduce them.
❑ We show keyboard strokes like this: Ctrl+A.
❑ We show file names, URLs, and code within the text like so:
persistence.properties.
❑ We present code in two different ways:
In code examples we highlight new and important code with a gray background.
The gray highlighting is not used for code that’s less important in the present
context, or has been shown before.
Source Code
As you work through the examples in this book, you may choose either to type in all the code manually
or to use the source code files that accompany the book. All of the source code used in this book is
available for download at

. Once at the site, simply locate the book’s title (either
by using the Search box or by using one of the title lists) and click the Download Code link on the book’s
detail page to obtain all the source code for the book.
Because many books have similar titles, you may find it easiest to search by ISBN; this book’s ISBN is
978-0-470-10092-9.
Once you download the code, just decompress it with your favorite compression tool. Alternatively,
you can go to the main Wrox code download page at
/>download.aspx
to see the code available for this book and all other Wrox books.
Errata
We make every effort to ensure that there are no errors in the text or in the code. However, no one is
perfect, and mistakes do occur. If you find an error in one of our books, like a spelling mistake or faulty
piece of code, we would be very grateful for your feedback. By sending in errata you may save another
reader hours of frustration and at the same time you will be helping us provide even higher quality
information.
To find the errata page for this book, go to
and locate the title using the Search
box or one of the title lists. Then, on the book details page, click the Book Errata link. On this page
you can view all errata that has been submitted for this book and posted by Wrox editors. A complete
book list including links to each book’s errata is also available at
www.wrox.com/misc-pages/
booklist.shtml
.
If you don’t spot “your” error on the Book Errata page, go to
www.wrox.com/contact/techsupport
.shtml
and complete the form there to send us the error you have found. We’ll check the information
and, if appropriate, post a message to the book’s errata page and fix the problem in subsequent editions
of the book.
Introduction

xx
00929flast.qxd:00929flast 3/13/07 10:37 AM Page xx
p2p.wrox.com
For author and peer discussion, join the P2P forums at p2p.wrox.com. The forums are a web-based system
for you to post messages relating to Wrox books and related technologies and interact with other readers
and technology users. The forums offer a subscription feature to email you topics of interest of your choos-
ing when new posts are made to the forums. Wrox authors, editors, other industry experts, and your fellow
readers are present on these forums.
At
you will find a number of different forums that will help you not only as you
read this book, but also as you develop your own applications. To join the forums, just follow these steps:
1. Go to p2p.wrox.com and click the Register link.
2. Read the terms of use and click Agree.
3. Complete the required information to join as well as any optional information you wish to pro-
vide and click Submit.
4. You will receive an email with information describing how to verify your account and complete
the joining process.
You can read messages in the forums without joining P2P but in order to post your own messages, you
must join.
Once you join, you can post new messages and respond to messages other users post. You can read mes-
sages at any time on the web. If you would like to have new messages from a particular forum emailed
to you, click the Subscribe To This Forum icon by the forum name in the forum listing.
For more information about how to use the Wrox P2P, be sure to read the P2P FAQs for answers to ques-
tions about how the forum software works as well as many common questions specific to P2P and Wrox
books. To read the FAQs, click the FAQ link on any P2P page.
Introduction
xxi
00929flast.qxd:00929flast 3/13/07 10:37 AM Page xxi
00929flast.qxd:00929flast 3/13/07 10:37 AM Page xxii

×