<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AskApache &#187; Search Results  &#187;  cname</title>
	<atom:link href="http://www.askapache.com/search/cname/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.askapache.com</link>
	<description>Advanced Web Development</description>
	<lastBuildDate>Thu, 26 Apr 2012 11:29:28 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Optimized Vimrc with 256 Colorscheme</title>
		<link>http://www.askapache.com/linux/fast-vimrc.html</link>
		<comments>http://www.askapache.com/linux/fast-vimrc.html#comments</comments>
		<pubDate>Sun, 26 Feb 2012 18:15:32 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Vim]]></category>

		<guid isPermaLink="false">http://www.askapache.com/?p=7062</guid>
		<description><![CDATA[<p><a class="IFL" href="http://www.askapache.com/linux/fast-vimrc.html"><img src="http://uploads.askapache.com/2012/02/vimrc-colorscheme.png" alt="askapachecode 256color colorscheme and vimrc screenshot" title="askapachecode 256color colorscheme and vimrc screenshot" width="525" height="277" class="size-full wp-image-7074" /></a><strong>This is not your everyday vimrc</strong>.  This is <em>my</em> personalized vimrc.. works especially great on remote servers, in tmux, screen, etc. <br /><br />This doesn't require a git checkout, a vim update, a bash update, an OS update, a plugin.  No.  1 vimrc, 1 colorscheme, just use curl to download and it's on.  I use this on <a href="http://archlinux.org/">Arch Linux</a>, NetBSD, FreeBSD, OpenBSD, Debian, Ubuntu, Cent OS, Red Hat, and that's mostly it so far. <br />If you aren't already using vim as your primary editor in a powerful way, you are gonna owe me for this.<br class="C" /></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/linux/fast-vimrc.html"></a><a href="http://www.askapache.com/linux/fast-vimrc.html"><cite>AskApache.com</cite></a></p><p>This is 90% geared for purely console/terminal/pty/tty/ssh/putty/telnet/tmux/screen users.  I've only just the past couple years started understanding why it was key to learn vim, in the past I never had the patience for it and preferred nano-like editors.  Now vim is all I use when on linux, it's so much more productive.. especially with a customized vimrc file.  This doesn't require a git checkout, a vim update, a bash update, an OS update, a plugin.  No.  This is a single file that I use on <a href="http://archlinux.org/">Arch Linux</a>, NetBSD, FreeBSD, OpenBSD, Debian, Ubuntu, Cent OS, Red Hat, and that's it so far.  This is geared for users who use SSH more than anything else.  Of course, it works perfect on an X enabled box locally as well.</p>

<h2>ScreenShot</h2>
<p><a href="http://uploads.askapache.com/2012/02/vimrc-screenshot.png"><img src="http://uploads.askapache.com/2012/02/vimrc-screenshot.png" alt="Screenshot of this vimrc in action" title="Screenshot of this vimrc in action" width="911" height="987" class="size-full wp-image-7073" /></a></p>

<h2>Setup</h2>
<p>I install this as <code>/etc/vimrc</code> if possible.  Individual users can use a vim config file in their home directories.</p>
<pre>source /etc/vimrc</pre>
<p>To install for a single user just save it in their home dir at <code>/home/username/.vimrc</code></p>

<h2>Portability</h2>
<p>For the portability needed to work on many different systems, this doesn't rely on any plugins other than those built into the default installation of vim 7.0.
It works well on all types of consoles, and depending on the TERM environment variable (and whether it has the right term capabilities) it will load 256 color support or not.  Usually on a new system I just scp this right over and it works without any modifications.  But an ongoing Work in progress.</p>



<h2>Optimized Vimrc</h2>
<p>Download - <a href='http://uploads.askapache.com/2012/02/vimrc.txt'>Optimized vimrc</a></p>
<pre>" Updated: Wed Feb 22 13:25:23 2012 by galileo@galileo
&nbsp;
" For all key mappings like &#039;, .&#039; to reload vimrc
let maplocalleader=&#039;,&#039;
&nbsp;
" BACKUPS, SWAPFILES, VIEWDIR, TMPDIR  "{{{1
" ================================================================================================================================================================
&nbsp;
" SET RUNTIMEPATH {{{3
if isdirectory(expand("$HOME/.vim"))
  let $VIMRUNTIME=expand("$HOME/.vim")
  set runtimepath=$VIMRUNTIME
endif
&nbsp;
" IF BKDIR IS NOT SET OR EMPTY, SET {{{3
if $BKDIR == ""
  let $BKDIR=expand("$HOME/.bk")
  if !isdirectory(expand("$BKDIR"))
    call mkdir(expand("$BKDIR"), "p", 0700)
  endif
endif
&nbsp;
" MAKE DIRS IF mkdir exists {{{3
if exists("*mkdir")
  if !isdirectory(expand("$BKDIR/.vim/viewdir"))|call mkdir(expand("$BKDIR/.vim/viewdir"), "p", 0700)|endif
  if !isdirectory(expand("$BKDIR/.vim/tmp"))|call mkdir(expand("$BKDIR/.vim/tmp"), "p", 0700)|endif
  if !isdirectory(expand("$BKDIR/.vim/backups"))|call mkdir(expand("$BKDIR/.vim/backups"), "p", 0700)|endif
endif
&nbsp;
" SETTINGS USING NEW DIRS {{{3
let &amp;dir=expand("$BKDIR") . "/.vim"
let &amp;viewdir=expand("$BKDIR") . "/.vim/viewdir"
let &amp;backupdir=expand("$BKDIR") . "/.vim/backups"
"let &amp;verbosefile=expand("$BKDIR") . "/.vim/vim-messages.
&nbsp;
" VIMINFO {{{3
" COMMENTED OUT {{{4
"  "       Maximum number of lines saved for each register
"  %       When included, save and restore the buffer lis
"  &#039;       Maximum number of previously edited files for which the marks are remembere
"  /       Maximum number of items in the search pattern history to be saved
"  :        Maximum number of items in the command-line history
"  &lt;       Maximum number of lines saved for each register.
"   @       Maximum number of items in the input-line history
"  h       Disable the effect of &#039;hlsearch&#039; when loading the viminfo
"  n       Name of the viminfo file.  The name must immediately follow the &#039;n&#039;.  Must be the last oneEnvironment variables are expanded when opening the file, not when setting the option
"  r       Removable media.  The argument is a string
"  s       Maximum size of an item in Kbyte
"   }}}4 COMMENTED OUT
let &amp;viminfo="%200,&#039;200,/800,h,&lt;500,:500,s150,r/tmp,r" . expand("$BKDIR") . "/.vim/tmp,n" . expand("$BKDIR") ."/.vim/.vinfo"
&nbsp;
" CUSTOM FUNCTIONS "{{{1
" ================================================================================================================================================================
if !exists("AskApacheLoaded")
  let AskApacheLoaded=1
&nbsp;
  " FUNCTION - LastMod {{{3
  " Warning, this is controlled by an autocmd triggered when closing the file that updates the file (in a great way)
  " Updated: Wed Feb 22 13:25:23 2012 by galileo@galileo
  function! LastMod()
    exe "silent! 1,20s/Updated: .*/" . printf(&#039;Updated: %s by %s@%s&#039;, strftime("%c"), expand("$LOGNAME"), hostname()) . "/e"
  endfunction
&nbsp;
  " FUNCTION - LastModNow {{{3
  " An even better version than LastMod()
  function! LastModNow()
    call setline(line(&#039;.&#039;), printf(&#039;%sUpdated: %s by %s@%s&#039;, printf(&amp;commentstring, &#039; &#039;), strftime("%c"), expand("$LOGNAME"), hostname()))
    "printf(&#039;%sUpdated: %s by %s@%s&#039;, printf(&amp;commentstring, &#039; &#039;), strftime("%c"), expand("$LOGNAME"), hostname())\|dd\|j\|dd&lt;CR&gt;&lt;ESC&gt;
    "printf(&#039;Updated: %s by %s %s&#039;, strftime("%c"), expand("$LOGNAME@$HOSTNAME")) ."/e"
  endfunction
&nbsp;
  " FUNCTION - AppendModeline {{{3
  " Append modeline after last line in buffer.  Use substitute() instead of printf() to handle &#039;%%s&#039; modeline
  function! AppendModeline()
    let l:modeline = printf(" vim: set ft=%s ts=%d sw=%d tw=%d foldmethod=%s :", &amp;filetype, &amp;tabstop, &amp;shiftwidth, &amp;textwidth, &amp;foldmethod)
    let l:modeline = substitute(&amp;commentstring, "%s", l:modeline, "")
    call append(line("$"), l:modeline)
  endfunction
&nbsp;
  " FUNCTION - LastModAAZZZ {{{3
  " AA_UPDATED=&#039;01/24/12-00:56:00&#039;
  function! LastModAAZZZ()
    exe "1,50s/AA_UPDATED=.*/AA_UPDATED=&#039;" . strftime("%c") . "&#039;"
  endfunction
&nbsp;
  " FUNCTION - StripTrailingWhitespace {{{3
  " automatically remove trailing whitespace before write
  function! StripTrailingWhitespace()
    normal mZ
    %s/\s\+$//e
    if line("&#039;Z") != line(".")|echo "Stripped whitespace\n"|endif
    normal `Z
  endfunction
&nbsp;
  " FUNCTION - MyTabL {{{3
  function! MyTabL()
    let s = &#039;&#039;|let t = tabpagenr()|let i = 1
    while i &lt;= tabpagenr(&#039;$&#039;)
      let bl = tabpagebuflist(i)|let wn = tabpagewinnr(i)
      let s .= &#039;%&#039; . i . &#039;T&#039;. (i == t ? &#039;%1*&#039; : &#039;%2*&#039;) . &#039;%*&#039; . (i == t ? &#039; %#TabLineSel# &#039; : &#039;%#TabLine#&#039;)
      let file = (i == t ? fnamemodify(bufname(bl[wn - 1]), &#039;:p&#039;) : fnamemodify(bufname(bl[wn - 1]), &#039;:t&#039;) )|if file == &#039;&#039;|let file = &#039;[No Name]&#039;|endif
      let s .= i.&#039; &#039;. file .(i == t ? &#039; &#039; : &#039;&#039;)|let i += 1
    endwhile
    let s .= &#039;%T%#TabLineFill#%=&#039; . (tabpagenr(&#039;$&#039;) &gt; 1 ? &#039;%999XX&#039; : &#039;X&#039;)
    return s
  endfunction
&nbsp;
  " FUNCTION - DiffWithSaved {{{3
  " Diff with saved version of the file
  function! s:DiffWithSaved()
    let filetype=&amp;ft
    diffthis
    vnew | r # | normal! 1Gdd
    diffthis
    exe "setlocal bt=nofile bh=wipe nobl noswf ro ft=" . filetype
  endfunction
  com! DiffSaved call s:DiffWithSaved()
&nbsp;
  " FUNCTION - ShowWhitespace() {{{3
  function! ShowWhitespace(flags)
    let bad = &#039;&#039;
    let pat = []
    for c in split(a:flags, &#039;\zs&#039;)
      if c == &#039;e&#039;
        call add(pat, &#039;\s\+$&#039;)
      elseif c == &#039;i&#039;
        call add(pat, &#039;^\t*\zs \+&#039;)
      elseif c == &#039;s&#039;
        call add(pat, &#039; \+\ze\t&#039;)
      elseif c == &#039;t&#039;
        call add(pat, &#039;[^\t]\zs\t\+&#039;)
      else
        let bad .= c
      endif
    endfor
&nbsp;
    if len(pat) &gt; 0
      let s = join(pat, &#039;\|&#039;)
      exec &#039;syntax match ExtraWhitespace "&#039;.s.&#039;" containedin=ALL&#039;
    else
      syntax clear ExtraWhitespace
    endif
&nbsp;
    if len(bad) &gt; 0|echo &#039;ShowWhitespace ignored: &#039;.bad|endif
  endfunction
&nbsp;
  " FUNCTION - ToggleShowWhitespace {{{3
  " I use this all the time, it&#039;s mapped to , ts
  function! ToggleShowWhitespace()
    if !exists(&#039;b:ws_show&#039;)|let b:ws_show = 0|endif
    if !exists(&#039;b:ws_flags&#039;)|let b:ws_flags = &#039;est&#039;|endif
    let b:ws_show = !b:ws_show
    if b:ws_show|call ShowWhitespace(b:ws_flags)|else|call ShowWhitespace(&#039;&#039;)|endif
  endfunction
&nbsp;
endif
&nbsp;
" DYNAMIC SETTINGS / COLORS / TERMINAL {{{1
" ================================================================================================================================================================
&nbsp;
" DISABLE MOUSE NO GOOEYS {{{3
if has(&#039;mouse&#039;)|set mouse=|endif
&nbsp;
" SET TITLESTRING {{{3
if has(&#039;title&#039;)|set titlestring=%t%(\ [%R%M]%)|endif
&nbsp;
" SET TABLINE {{{3
if exists("*s:MyTabL")|set tabline=%!MyTabL()|endif
&nbsp;
let g:vimsyn_folding=&#039;af&#039;
&nbsp;
"DISABLE FILETYPE-SPECIFIC MAPS {{{3
let no_plugin_maps=1
&nbsp;
"}}}1 DYNAMIC SETTINGS / COLORS / TERMINAL
&nbsp;
" OPTIONS "{{{1
" ===========================================================================================================================================================================
&nbsp;
" BACKUP, FILE OPTIONS {{{2
" ================================================================================
set backup        " Make a backup before overwriting a file.  Leave it around after the file has been successfully written.
set backupcopy=auto " When writing a file and a backup is made, this option tells how it&#039;s done.  This is a comma separated list of words. - value: yes,no,auto - no:rename the file and write a new one
&nbsp;
set swapfile
set swapsync=fsync
&nbsp;
"}}}2 BACKUP, FILE OPTIONS
&nbsp;
" BASIC SETTINGS "{{{2
" ================================================================================
set nocompatible    " vim, not vi.. must be first, because it changes other options as a side effect
set modeline
&nbsp;
set statusline=%M%h%y\ %t\ %F\ %p%%\ %l/%L\ %=[%{&amp;ff},%{&amp;ft}]\ [a=\%03.3b]\ [h=\%02.2B]\ [%l,%v]
set title titlelen=150 titlestring=%(\ %M%)%(\ (%{expand(\"%:p:h\")})%)%(\ %a%)\ -\ %{v:servername}
&nbsp;
"set tags=tags;/      " search recursively up for tags
&nbsp;
set ttyfast        " we have a fast terminal
set scrolljump=5    " when scrolling up down, show at least 5 lines
"set ttyscroll=999    " make vim redraw screen instead of scrolling when there are more than 3 lines to be scrolled
&nbsp;
"set tw=500        " default textwidth is a max of 5
&nbsp;
set undolevels=10    " 50 undos - saved in memory
set updatecount=250    " switch every 250 chars, save swap
&nbsp;
set whichwrap+=b,s,&lt;,&gt;,h,l,[,]      " backspaces and cursor keys wrap to
"set wildignore+=*.o,*~,.lo,*.exe,*.bak  " ignore object files
"set wildmenu              " menu has tab completion
"set wildmode=longest:full        " *wild* mode
set nowrap
&nbsp;
set autoindent smartindent    " auto/smart indent
&nbsp;
set autoread          " watch for file changes
&nbsp;
set backspace=indent,eol,start  " backspace over all kinds of things
&nbsp;
set cmdheight=1          " command line two lines high
set complete=.,w,b,u,U,t,i,d  " do lots of scanning on tab completion
set cursorline          " show the cursor line
"set enc=utf-8 fenc=utf-8    " utf-8
&nbsp;
set history=3000        " keep 3000 lines of command line history
&nbsp;
set keywordprg=TERM=mostlike\ man\ -s\ -Pless
&nbsp;
set laststatus=2
&nbsp;
"set lazyredraw          " don&#039;t redraw when don&#039;t have to
set linebreak          " wrap at &#039;breakat&#039; instead of last char
set magic            " Enable the "magic"
&nbsp;
set maxmem=25123  " 24 MB -  max mem in Kbyte to use for one buffer.  Max is 2000000
&nbsp;
set noautowrite          " don&#039;t automagically write on :next
&nbsp;
set noexpandtab          " no expand tabs to spaces"
set noruler          " show the line number on the bar
set nospell
set nohidden          " close the buffer when I close a tab (I use tabs more than buffers)
&nbsp;
set noerrorbells visualbell t_vb= " Disable ALL bells
&nbsp;
set number          " line numbers
&nbsp;
set pastetoggle=&lt;F11&gt;
&nbsp;
set scrolloff=3        " keep at least 3 lines above/below
set shiftwidth=3      " shift width
&nbsp;
set showcmd          " Show us the command we&#039;re typing
set showfulltag        " show full completion tags
set showmode        " show the mode all the time
&nbsp;
set sidescroll=2      " if wrap is off, this is fasster for horizontal scrolling
set sidescrolloff=2      "keep at least 5 lines left/right
&nbsp;
set noguipty
&nbsp;
set splitright
set splitbelow
&nbsp;
set restorescreen=on " restore screen contents when vim exits -  disable withset t_ti= t_te=
&nbsp;
"set sessionoptions=word,blank,buffers,curdir,folds,globals,help,localoptions,resize,sesdir,tabpages,winpos,winsize
set winheight=25
set winminheight=1  " minimal value for window height
"set winheight=30  " set the minimal window height
set equalalways    " all the windows are automatically sized same
set eadirection=both  " only equalalways for horizontally split windows
&nbsp;
set hlsearch
&nbsp;
set laststatus=2
&nbsp;
set tabstop=4
set softtabstop=4
&nbsp;
set shiftwidth=3
set switchbuf=usetab
&nbsp;
set commentstring=#%s
&nbsp;
set tabpagemax=55
set showtabline=2    " 2 always, 1 only if multiple tabs
set smarttab      " tab and backspace are smart
&nbsp;
set foldmethod=marker
set foldenable
set foldcolumn=6        " the blank left-most bar left of the numbered lines
&nbsp;
set incsearch          " incremental search
"set ignorecase          " search ignoring case
set sc              " override &#039;ignorecase&#039; when pattern has upper case characters
set smartcase          " Ignore case when searching lowercase
&nbsp;
set showmatch          " show matching bracket
set diffopt=filler,iwhite    " ignore all whitespace and sync"
set stal=2
&nbsp;
"}}}1 OPTIONS
&nbsp;
" PLUGIN SETTINGS {{{1
" ================================================================================================================================================================
" Settings for :TOhtml "{{{3
let html_number_lines=1
let html_use_css=1
let use_xhtml=1
"}}}1 PLUGIN SETTINGS
&nbsp;
" COLORSCHEME IF MORE THAN 2 COLORS lol {{{1
" ================================================================================================================================================================
if &amp;t_Co &gt; 2
&nbsp;
  if &amp;term =~ "256"
&nbsp;
    set bg=dark t_Co=256 vb
    let &amp;t_vb="\&lt;Esc&gt;[?5h\&lt;Esc&gt;[?5l"  " flash screen for visual bell
&nbsp;
    if filereadable(expand("$VIMRUNTIME/colors/askapachecode.vim"))
      colorscheme askapachecode
    elseif filereadable(expand("$HOME/.vim/colors/askapachecode.vim"))
      colorscheme askapachecode
    else
      colorscheme default
    endif
&nbsp;
    filetype indent plugin on
    syntax on
&nbsp;
  else
    " things like cfdisk, crontab -e, visudo, vless, etc.
    set term=linux
    set t_Co=8
    syntax off
    filetype indent plugin off
&nbsp;
  endif
&nbsp;
endif
&nbsp;
"}}}1
&nbsp;
" AUTOCOMMANDS "{{{1
" ===========================================================================================================================================================================
"if !exists(":DiffOrig") | command DiffOrig vert new | set bt=nofile | r # | 0d_ | diffthis | wincmd p | diffthis | endif
&nbsp;
" auto load extensions for different file types
if has(&#039;autocmd&#039;)
&nbsp;
  if !exists("autocommands_loaded")
    let autocommands_loaded = 1
&nbsp;
    " JUMP TO LAST POS {{{3
    " When editing a file, always jump to the last known cursor position. Don&#039;t do it when the position is invalid or when inside an event handler
    " (happens when dropping a file on gvim). Also don&#039;t do it when the mark is in the first line, that is the default position when opening a file.
    au BufReadPost * if line("&#039;\"") &gt; 1 &amp;&amp; line("&#039;\"") &lt;= line("$") | exe "normal! g`\"" | endif
&nbsp;
    " CLEARMATCHES ON BUFWINLEAVE {{{3
    au BufWinLeave * call clearmatches()
&nbsp;
    " STRIP TRAILING WHITESPACE {{{3
    autocmd BufWritePre *.cpp,*.hpp,*.i :call StripTrailingWhitespace()
&nbsp;
    " AA_ZZZ LAST MOD {{{3
    autocmd BufWritePre,FileWritePre,TabLeave zzz_askapache-bash.sh ks|call LastModAAZZZ()|&#039;s
&nbsp;
    " SET VIM SETTINGS FOR AA_ZZZ SCRIPTS {{{3
    autocmd BufRead /etc/ZZZ/*.sh,.bash_profile,.bash_login,.bashrc,.bash_login_user,.bash_logout setlocal ts=4 sw=3 ft=sh foldmethod=marker tw=500 foldcolumn=7
&nbsp;
    " INSERT CURRENT DATE AND TIME IN A *.SH FILE WHEN WRITING IT {{{3
    autocmd BufWritePre,FileWritePre *.*   ks|call LastMod()|&#039;s
&nbsp;
    " IMPROVE LEGIBILITY {{{3
    autocmd BufRead quickfix setlocal nobuflisted wrap number
&nbsp;
    " SAVE BACKUPFILE AS BACKUPDIR/FILENAME-06-13-1331 {{{3
    autocmd BufWritePre * let &amp;bex = strftime("-%m-%d-%H%M")
&nbsp;
    " TMUX FILETYPE {{{3
    autocmd BufRead tmux.conf,.tmux.conf,.tmux*,*/tmux-sessions/* setlocal filetype=tmux foldmethod=marker
&nbsp;
    " APACHE2 FILETYPE {{{3
    autocmd BufRead /opt/a*/conf/*,/etc/httpd/*.conf setlocal filetype=apache
&nbsp;
    " SH FILETYPES {{{3
    autocmd BufRead *.sh,*.cron,*.bash setlocal filetype=sh
&nbsp;
    " SYSLOG-NG FILETYPE {{{3
    autocmd BufRead syslog-ng.conf setlocal filetype=syslog-ng
&nbsp;
    " COMMENTSTRING FOR VIM "{{{3
    au FileType vim setlocal commentstring="%s
&nbsp;
    " COMMENTSTRING FOR XDEFAULTS "{{{3
    au FileType xdefaults setlocal foldmethod=marker foldlevel=2 commentstring=!%s
&nbsp;
    " VIMRC {{{3
    augroup vimrc
      au BufReadPre * setlocal foldmethod=indent
      au BufWinEnter * if &amp;fdm == &#039;indent&#039; | set foldmethod=manual | endif
      au BufRead *.vim,vimrc,*.vimrc set filetype=vim ts=3 sw=3 tw=500 foldmethod=marker foldcolumn=6
    augroup END
&nbsp;
    " AUTOMKVIEWS {{{3
    " Warning - this will save your settings for each file you edit and restore those settings when opened again - can fill up quick
    au BufWinLeave *.sh,*.conf,*.vim,*.c,*.txt,.htaccess,*.cgi,*.php,*.html,*.conf,vimrc mkview
    au BufWinEnter *.sh,*.conf,*.vim,*.c,*.txt,.htaccess,*.cgi,*.php,*.html,*.conf,vimrc silent loadview
    " }}}3
&nbsp;
    " MAN RUNTIME - TODO REPLACE WITH TMUXES CTRL-M BINDING {{{3
    " Lets you type :Man anymanpage and it will load in vim, color-coded and searchable
    "runtime ftplugin/man.vim
&nbsp;
  endif
&nbsp;
endif
"}}}1
&nbsp;
" MAPS "{{{1
" ===========================================================================================================================================================================
&nbsp;
" FUNCTION MAPS {{{2
" ---------------------------------
" APPEND MODELINE {{{3
map &lt;silent&gt; &lt;LocalLeader&gt;ml :call AppendModeline()&lt;CR&gt;
&nbsp;
" SHOW WHITESPACE {{{3
nnoremap &lt;LocalLeader&gt;ts :call ToggleShowWhitespace()&lt;CR&gt;
&nbsp;
" SUDO A WRITE {{{3
command! W :execute &#039;:silent w !sudo tee % &gt; /dev/null&#039; | :edit!
"cmap w!! %!sudo tee &gt; /dev/null %
" :w !sudo tee &gt; /dev/null %
&nbsp;
" SET TABLINE {{{3
" My Personal Fav, inserts last-modified manually on current line when you press &lt;F12&gt; key
" call setline(1, printf(&#039;%sUpdated: %s by %s@%s&#039;, printf(&amp;commentstring, &#039; &#039;), strftime("%c"), expand("$LOGNAME"), hostname()))
if exists("*s:LastModNow")
  map &lt;silent&gt; &lt;F12&gt; :call LastModNow()&lt;CR&gt;
endif
&nbsp;
" RELOAD VIMRC FILES {{{3
map &lt;LocalLeader&gt;. :mkview&lt;CR&gt;:unlet! AskApacheLoaded autocommands_loaded&lt;CR&gt;:mapclear&lt;CR&gt;:source /etc/vimrc&lt;CR&gt;:echoerr &#039;VIMRC RELOADED&#039;&lt;CR&gt;
&nbsp;
" SCROLLING MAPS {{{3
map &lt;PageDown&gt; :set scroll=0&lt;CR&gt;:set scroll^=2&lt;CR&gt;:set scroll-=1&lt;CR&gt;&lt;C-D&gt;:set scroll=0&lt;CR&gt;
map &lt;PageUp&gt; :set scroll=0&lt;CR&gt;:set scroll^=2&lt;CR&gt;:set scroll-=1&lt;CR&gt;&lt;C-U&gt;:set scroll=0&lt;CR&gt;
nnoremap &lt;silent&gt; &lt;PageUp&gt; &lt;C-U&gt;&lt;C-U&gt;
vnoremap &lt;silent&gt; &lt;PageUp&gt; &lt;C-U&gt;&lt;C-U&gt;
inoremap &lt;silent&gt; &lt;PageUp&gt; &lt;C-\&gt;&lt;C-O&gt;&lt;C-U&gt;&lt;C-\&gt;&lt;C-O&gt;&lt;C-U&gt;
nnoremap &lt;silent&gt; &lt;PageDown&gt; &lt;C-D&gt;&lt;C-D&gt;
vnoremap &lt;silent&gt; &lt;PageDown&gt; &lt;C-D&gt;&lt;C-D&gt;
inoremap &lt;silent&gt; &lt;PageDown&gt; &lt;C-\&gt;&lt;C-O&gt;&lt;C-D&gt;&lt;C-\&gt;&lt;C-O&gt;&lt;C-D&gt;
"}}}3
&nbsp;
" KEY MAPS {{{2
" physically map keys to produce different key, type CTRL-V in insert mode followed by any key to see how vim sees it
" ----------------------------------------
imap &lt;ESC&gt;[8~ &lt;End&gt;
map &lt;ESC&gt;[8~ &lt;End&gt;
&nbsp;
imap &lt;ESC&gt;[7~ &lt;Home&gt;
map &lt;ESC&gt;[7~ &lt;Home&gt;
&nbsp;
" Basic Maps  {{{2
" ----------------------------------------
" TOGGLE PASTE MODE {{{3
map &lt;LocalLeader&gt;pm :set nonumber! foldcolumn=0&lt;CR&gt;
&nbsp;
" REINDENT FILE {{{3
map &lt;LocalLeader&gt;ri G=gg&lt;CR&gt;
&nbsp;
" CLEAR SPACES AT END OF LINE {{{3
map &lt;LocalLeader&gt;cs :%s/\s\+$//e&lt;CR&gt;
&nbsp;
" Y YANKS FROM CURSOR TO $ {{{3
map Y y$
&nbsp;
" DON&#039;T USE EX MODE, USE Q FOR FORMATTING {{{3
map Q gq
map! ^H ^?
&nbsp;
" NEXT SEARCH RESULT {{{3
map &lt;silent&gt; &lt;LocalLeader&gt;cn :cn&lt;CR&gt;
&nbsp;
" WRAP? {{{3
map &lt;silent&gt; &lt;LocalLeader&gt;ww :ww
&nbsp;
" ERR INSERTION {{{3
"map &lt;silent&gt; &lt;LocalLeader&gt;e &lt;Home&gt;A&lt;C-R&gt;=printf(&#039;%s&#039;, &#039;_err "$0 $FUNCNAME:$LINENO FAILED WITH ARGS= $*"&#039;)&lt;CR&gt;&lt;Home&gt;&lt;Esc&gt;
&nbsp;
" CUSTOM LINES FOR CODING {{{3
map &lt;silent&gt; &lt;LocalLeader&gt;l1 &lt;Home&gt;A&lt;C-R&gt;=printf(&#039;%s%s&#039;, printf(&amp;commentstring, &#039; &#039;), repeat(&#039;=&#039;, 160))&lt;CR&gt;&lt;Home&gt;&lt;Esc&gt;
map &lt;silent&gt; &lt;LocalLeader&gt;l2 &lt;Home&gt;A&lt;C-R&gt;=printf(&#039;%s%s&#039;, printf(&amp;commentstring, &#039; &#039;), repeat(&#039;=&#039;, 80))&lt;CR&gt;&lt;Home&gt;&lt;Esc&gt;
map &lt;silent&gt; &lt;LocalLeader&gt;l3 &lt;Home&gt;A&lt;C-R&gt;=printf(&#039;%s%s&#039;, printf(&amp;commentstring, &#039; &#039;), repeat(&#039;-&#039;, 40))&lt;CR&gt;&lt;Home&gt;&lt;Esc&gt;
map &lt;silent&gt; &lt;LocalLeader&gt;l4 &lt;Home&gt;A&lt;C-R&gt;=printf(&#039;%s%s&#039;, printf(&amp;commentstring, &#039; &#039;), repeat(&#039;-&#039;, 20))&lt;CR&gt;&lt;Home&gt;&lt;Esc&gt;
&nbsp;
" CHANGE DIRECTORY TO THAT OF CURRENT FILE {{{3
nmap &lt;LocalLeader&gt;cd :cd%:p:h&lt;CR&gt;
&nbsp;
" CHANGE LOCAL DIRECTORY TO THAT OF CURRENT FILE {{{3
nmap &lt;LocalLeader&gt;lcd :lcd%:p:h&lt;CR&gt;
&nbsp;
" TOGGLE WRAPPING {{{3
nmap &lt;LocalLeader&gt;ww :set wrap!&lt;CR&gt;
nmap &lt;LocalLeader&gt;wo :set wrap&lt;CR&gt;
&nbsp;
" TABS "{{{2
" ---------------------------------
&nbsp;
" CREATE A NEW TAB {{{3
map &lt;LocalLeader&gt;tc :tabnew %&lt;CR&gt;
&nbsp;
" LAST TAB {{{3
map &lt;LocalLeader&gt;t&lt;Space&gt; :tablast&lt;CR&gt;
&nbsp;
" CLOSE A TAB {{{3
map &lt;LocalLeader&gt;tk :tabclose&lt;CR&gt;
&nbsp;
" NEXT TAB {{{3
map &lt;LocalLeader&gt;tn :tabnext&lt;CR&gt;
&nbsp;
" PREVIOUS TAB {{{3
map &lt;LocalLeader&gt;tp :tabprev&lt;CR&gt;
&nbsp;
" FOLDS   "{{{2
" ---------------------------------
" Fold with paren begin/end matching
nmap F zf%
&nbsp;
" When I use ,sf - return to syntax folding with a big foldcolumn
nmap &lt;LocalLeader&gt;sf :set foldcolumn=6 foldmethod=syntax&lt;cr&gt;
"}}}2
&nbsp;
"}}}1
&nbsp;
" HILITE "{{{1
" ===========================================================================================================================================================================
hi NonText cterm=NONE ctermfg=NONE
hi Search cterm=bold ctermbg=99 ctermfg=17
"}}}
&nbsp;
</pre>


<h2>Colorscheme</h2>
<p>Here is a colorscheme file optimized for 256 colors.  It will work if saved in <code>~/.vim/colors/askapachecode.vim</code> or likewise in your runtimepath.  Additionally, you could just paste it in the bottom of the above vimrc.  The code really needs to be cleaned up, but it looks awesome.</p>
<p>Download - <a href='http://uploads.askapache.com/2012/02/askapachecode.txt'>askapachecode - 256 Colors Vim Colorscheme</a></p>
<p><code>~/.vim/colors/askapachecode.vim</code></p>
<pre>
" Vim color file -- askapachecode
" Maintainer: AskApache &lt;webmaster@askapache.com&gt;
" Updated: Wed Feb 22 14:10:54 2012 by galileo@galileo
&nbsp;
set background=dark
hi clear
&nbsp;
if exists("syntax_on")|syntax reset|endif
&nbsp;
let g:colors_name="askapachecode"
&nbsp;
" Vim &gt;= 7.0 specific colors
if version &gt;= 700
 hi CursorLine ctermbg=236
 hi CursorColumn ctermbg=236
 hi MatchParen ctermfg=157 ctermbg=237 cterm=bold
 hi Pmenu ctermfg=255 ctermbg=238
 hi PmenuSel ctermfg=0 ctermbg=148
endif
&nbsp;
" General colors
hi Cursor ctermbg=241
hi Normal ctermfg=253 ctermbg=232
hi NonText ctermfg=244 ctermbg=235
hi LineNr ctermfg=244 ctermbg=232
hi StatusLine ctermfg=253 ctermbg=238 cterm=italic
hi StatusLineNC ctermfg=246 ctermbg=238
hi VertSplit ctermfg=238 ctermbg=238
hi Folded ctermbg=4 ctermfg=248
hi Title ctermfg=254 cterm=bold
hi Visual ctermfg=254 ctermbg=4
hi SpecialKey ctermfg=244 ctermbg=236
&nbsp;
hi pythonOperator ctermfg=103
&nbsp;
hi Search cterm=NONE  
&nbsp;
" basic highlight groups (:help highlight-groups) {{{1
&nbsp;
" text {{{2
hi Normal ctermfg=white ctermbg=black cterm=NONE
hi Folded ctermfg=lightgray ctermbg=black cterm=underline
hi LineNr ctermfg=darkgray ctermbg=NONE cterm=NONE
hi Directory ctermfg=cyan ctermbg=NONE cterm=NONE
hi NonText ctermfg=yellow ctermbg=NONE cterm=NONE
hi SpecialKey ctermfg=green ctermbg=NONE cterm=NONE
&nbsp;
hi DiffAdd ctermfg=white ctermbg=darkblue cterm=NONE
hi DiffChange ctermfg=black ctermbg=darkmagenta cterm=NONE
hi DiffDelete ctermfg=black ctermbg=red cterm=bold
hi DiffText ctermfg=white ctermbg=green cterm=bold
&nbsp;
" borders / separators / menus {{{2
hi FoldColumn ctermfg=lightgray ctermbg=darkgray cterm=NONE
hi SignColumn ctermfg=lightgray ctermbg=darkgray cterm=NONE
hi Pmenu ctermfg=white ctermbg=darkgray cterm=NONE
hi PmenuSel ctermfg=white ctermbg=lightblue cterm=NONE
hi PmenuSbar ctermfg=black ctermbg=black cterm=NONE
hi PmenuThumb ctermfg=gray ctermbg=gray cterm=NONE
&nbsp;
hi StatusLine ctermfg=black ctermbg=white cterm=bold
hi StatusLineNC ctermfg=darkgray ctermbg=white cterm=NONE
hi WildMenu ctermfg=white ctermbg=darkblue cterm=bold
hi VertSplit ctermfg=white ctermbg=white cterm=NONE
&nbsp;
if &amp;t_Co == 256|hi TabLine ctermfg=15 ctermbg=242 term=underline|else|hi TabLine ctermfg=grey ctermbg=white term=underline|endif
"hi TabLine ctermfg=white ctermbg=white cterm=NONE
hi TabLineFill ctermfg=grey ctermbg=white cterm=NONE
"hi TabLineSel ctermfg=black ctermbg=green cterm=NONE
hi TabLineSel ctermfg=green ctermbg=black term=bold
"hi TabLineSel term=bold cterm=bold
"hi TabLineFill term=reverse cterm=reverse 
"hi TabLine term=underline cterm=underline ctermfg=15 ctermbg=242
&nbsp;
"hi Menu
"hi Scrollbar
"hi Tooltip
&nbsp;
" cursor / dynamic / other {{{2
hi Cursor ctermfg=black ctermbg=white cterm=NONE
hi CursorIM ctermfg=black ctermbg=white cterm=reverse
hi CursorLine ctermfg=NONE ctermbg=NONE cterm=NONE
hi CursorColumn ctermfg=NONE ctermbg=NONE cterm=NONE
&nbsp;
hi Visual ctermfg=white ctermbg=lightblue cterm=NONE
hi IncSearch ctermfg=white ctermbg=yellow cterm=NONE
hi Search ctermfg=white ctermbg=darkgreen cterm=NONE
&nbsp;
" LISTINGS / MESSAGES {{{2
hi ModeMsg ctermfg=yellow ctermbg=NONE cterm=NONE
hi Title ctermfg=red ctermbg=NONE cterm=bold
hi Question ctermfg=green ctermbg=NONE cterm=NONE
hi MoreMsg ctermfg=green ctermbg=NONE cterm=NONE
hi ErrorMsg ctermfg=white ctermbg=red cterm=bold
hi WarningMsg ctermfg=yellow ctermbg=NONE cterm=bold
&nbsp;
hi Directory term=bold ctermfg=4 "{{{
hi ErrorMsg term=standout ctermfg=15 ctermbg=1  
hi IncSearch term=reverse cterm=reverse 
hi Search term=NONE ctermfg=255 ctermbg=135
hi MoreMsg term=bold ctermfg=2  
hi ModeMsg term=bold cterm=bold 
hi LineNr term=underline ctermfg=244 ctermbg=232  
hi Question term=standout ctermfg=2  
hi StatusLine term=bold,reverse cterm=italic ctermfg=253 ctermbg=238   
hi StatusLineNC term=reverse cterm=reverse ctermfg=246 ctermbg=238  
hi VertSplit term=reverse cterm=reverse ctermfg=238 ctermbg=238  
hi Title term=bold cterm=bold ctermfg=254  
hi Visual term=reverse ctermfg=254 ctermbg=4  
hi VisualNOS term=bold,underline cterm=bold,underline
hi WarningMsg term=standout ctermfg=1 
hi WildMenu term=standout ctermfg=0 ctermbg=11  
hi Folded term=standout cterm=BOLD ctermfg=7 ctermbg=27
hi FoldColumn term=NONE cterm=NONE ctermfg=75 ctermbg=16
hi IncSearch term=bold,underline cterm=bold,underline ctermfg=7 ctermbg=9
hi DiffAdd term=bold ctermbg=12 
hi DiffChange term=bold ctermbg=13 
hi DiffDelete term=bold ctermfg=12 ctermbg=14   
hi DiffText term=reverse cterm=bold ctermbg=9  
hi SpellBad term=reverse ctermbg=9  
hi SpellCap term=reverse ctermbg=12  
hi SpellRare term=reverse ctermbg=13  
hi SpellLocal term=underline ctermbg=14  
hi Pmenu ctermfg=255 ctermbg=238  
hi PmenuSel ctermfg=0 ctermbg=148  
hi PmenuSbar ctermbg=7 
hi PmenuThumb cterm=reverse 
hi TabLine term=underline cterm=underline ctermfg=0 ctermbg=7  
hi TabLineSel term=bold cterm=bold 
hi TabLineFill term=reverse cterm=reverse 
hi CursorLine term=underline cterm=bold ctermbg=234
hi Cursor ctermbg=241 
hi MatchParen term=reverse cterm=bold ctermfg=157 ctermbg=237   
hi Error term=reverse ctermfg=15 ctermbg=9  
&nbsp;
" :hi TabLineSel|hi TabLineFill|hi TabLine
"hi TabLineSel term=bold cterm=bold 
"hi TabLineFill term=reverse cterm=reverse 
"hi TabLine term=underline cterm=underline ctermfg=15 ctermbg=242 
hi ExtraWhitespace ctermbg=red
hi Comment term=none ctermfg=darkgrey 
hi Constant term=underline ctermfg=Magenta 
hi Special term=bold ctermfg=DarkMagenta 
hi Identifier term=underline cterm=bold ctermfg=Cyan 
hi Statement term=bold ctermfg=Yellow 
hi PreProc term=underline ctermfg=LightBlue 
hi Type term=underline ctermfg=LightGreen 
hi Repeat term=underline ctermfg=White 
hi Operator ctermfg=Red 
hi Ignore ctermfg=black 
hi Error term=reverse ctermbg=Red ctermfg=White 
hi Todo term=standout ctermbg=Yellow ctermfg=Black 
&nbsp;
" COMMON GROUPS THAT LINK TO DEFAULT HIGHLIGHTING.
&nbsp;
hi Function ctermfg=85
hi String ctermfg=204
hi Statement term=bold cterm=bold ctermfg=81
hi Function term=bold cterm=bold ctermfg=32
hi Number ctermfg=129
hi Conditional term=bold cterm=bold ctermfg=47
hi Special term=underline ctermfg=191
hi Normal ctermfg=7
hi PreProc ctermfg=141
" Syntax highlighting
hi Comment ctermfg=244
hi Todo ctermfg=245
hi Boolean ctermfg=148
hi String ctermfg=148
hi Identifier ctermfg=148
hi Function ctermfg=124
hi Type ctermfg=103
hi Statement ctermfg=103
hi Keyword ctermfg=81
hi Constant ctermfg=81
hi Number ctermfg=81
hi Special ctermfg=81
hi PreProc ctermfg=230
" Code-specific colors
 
&nbsp;
" SYNTAX HIGHLIGHTING GROUPS (:HELP GROUP-NAME) {{{2
hi FoldColumn ctermbg=0 ctermfg=2
hi Folded cterm=none ctermfg=2
hi NonText cterm=NONE ctermfg=NONE 
hi StatusLine ctermfg=black ctermbg=White cterm=bold
hi StatusLineNC ctermfg=White ctermbg=green cterm=NONE
hi CursorLine cterm=bold term=bold
&nbsp;
" FINAL THOUGHTS "{{{2
"syn region myFold start="{" end="}" transparent fold
hi Search term=reverse ctermfg=0 ctermbg=11
hi LineNr term=underline ctermfg=244 ctermbg=232
hi MatchParen ctermfg=15 ctermbg=242
hi String ctermfg=10
hi Constant ctermfg=14
hi Identifier ctermfg=14
hi Operator ctermfg=13
hi NonText cterm=NONE ctermfg=NONE
hi Search cterm=bold ctermbg=99 ctermfg=17
</pre>


<h2>Additional Resources</h2>
<ol>
<li><a href="http://spf13.com/post/perfect-vimrc-vim-config-file">The perfect .vimrc vim config file</a></li>
</ol><p><a href="http://www.askapache.com/linux/fast-vimrc.html"></a><a href="http://www.askapache.com/linux/fast-vimrc.html">Optimized Vimrc with 256 Colorscheme</a> originally appeared on <cite>AskApache.com</cite> </p>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/linux/fast-vimrc.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>DNS Tracer</title>
		<link>http://www.askapache.com/online-tools/dns-trace</link>
		<comments>http://www.askapache.com/online-tools/dns-trace#comments</comments>
		<pubDate>Sun, 19 Apr 2009 05:56:27 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
		
		<guid isPermaLink="false">http://www.askapache.com/?page_id=2705</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/online-tools/dns-trace"></a><a href="http://www.askapache.com/online-tools/dns-trace"><cite>AskApache.com</cite></a></p><h3>DNS Records Queried</h3>
<dl>
<dt><var>A</var></dt><dd>Host address (dotted quad)</dd>

<dt><var>A6</var></dt><dd></dd>
<dt><var>AAAA</var></dt><dd>IP v6 address (address spec with colons)</dd>
<dt><var>AFSDB</var></dt><dd>AFS database location (type, domain name)</dd>
<dt><var>ANY</var></dt><dd>Matches information of any type available.</dd>
<dt><var>ATMA</var></dt><dd>ATM address</dd>
<dt><var>CERT</var></dt><dd></dd>
<dt><var>CNAME</var></dt><dd>Canonical name for an alias (domain name)</dd>

<dt><var>DNAME</var></dt><dd></dd>
<dt><var>EID</var></dt><dd>Endpoint identifier</dd>
<dt><var>GID</var></dt><dd>Group identification (number)</dd>
<dt><var>GPOS</var></dt><dd>Geographical position (longitude string, latitude string, altitude string)</dd>
<dt><var>HINFO</var></dt><dd>Host information (CPU type string, OS type string)</dd>
<dt><var>ISDN</var></dt><dd>ISDN address (address string, optional subaddress string)</dd>

<dt><var>KEY</var></dt><dd>Security key</dd>
<dt><var>KX</var></dt><dd>Key exchanger (preference value, domain name)</dd>
<dt><var>LOC</var></dt><dd>Geographical location (latitude, longitude, altitude, precision)</dd>
<dt><var>MAILA</var></dt><dd>Matches any of types MD, or MF.</dd>
<dt><var>MAILB</var></dt><dd>Matches any of types MB, MR, MG, or MINFO.</dd>
<dt><var>MB</var></dt><dd>Mailbox domain name (domain name)</dd>

<dt><var>MD</var></dt><dd>Mail destination (domain name)</dd>
<dt><var>MF</var></dt><dd>Mail forwarder (domain name)</dd>
<dt><var>MG</var></dt><dd>Mail group member (domain name)</dd>
<dt><var>MINFO</var></dt><dd>Mailbox or mail list information (request domain name, error domain name)</dd>
<dt><var>MR</var></dt><dd>Mail rename domain name (domain name)</dd>
<dt><var>MX</var></dt><dd>Mail exchanger (preference value, domain name)</dd>

<dt><var>NAPTR</var></dt><dd>Naming authority URN</dd>
<dt><var>NIMLOC</var></dt><dd>Nimrod locator</dd>
<dt><var>NS</var></dt><dd>Authoritative nameserver (domain name)</dd>
<dt><var>NSAP</var></dt><dd>NSAP address (encoded address)</dd>
<dt><var>NSAP-PTR</var></dt><dd>NSAP pointer (domain name)</dd>
<dt><var>NULL</var></dt><dd>Null resource record (no format or data)</dd>

<dt><var>NXT</var></dt><dd>Next valid record</dd>
<dt><var>OPT</var></dt><dd></dd>
<dt><var>PTR</var></dt><dd>Domain name pointer (domain name)</dd>
<dt><var>PX</var></dt><dd>X400 to RFC822 mapping (preference value, rfc822 domain, x400 domain)</dd>
<dt><var>RP</var></dt><dd>Responsible person (domain name for MB, domain name for TXT)</dd>
<dt><var>RT</var></dt><dd>Route through host (preference value, domain name)</dd>

<dt><var>SIG</var></dt><dd>Security signature</dd>
<dt><var>SINK</var></dt><dd></dd>
<dt><var>SOA</var></dt><dd>Marks the start of a zone of authority (domain name of primary, domain name of hostmaster, serial, refresh, retry, expiration, default ttl)</dd>
<dt><var>SRV</var></dt><dd>Internet service information</dd>
<dt><var>TXT</var></dt><dd>Descriptive text (one or more strings)</dd>
<dt><var>UID</var></dt><dd>User identification (number)</dd>

<dt><var>UINFO</var></dt><dd>User information (string)</dd>
<dt><var>UNSPEC</var></dt><dd>Unspecified binary data (data)</dd>
<dt><var>WKS</var></dt><dd>Well-known service description (dotted quad, protocol name, list of services)</dd>
<dt><var>X25</var></dt><dd>X25 address (address string)</dd>
</dl><p><a href="http://www.askapache.com/online-tools/dns-trace"></a><a href="http://www.askapache.com/online-tools/dns-trace">DNS Tracer</a> originally appeared on <cite>AskApache.com</cite> </p>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/online-tools/dns-trace/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DNS Round Robin Configuration using Rsync over SSH</title>
		<link>http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html</link>
		<comments>http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html#comments</comments>
		<pubDate>Tue, 14 Apr 2009 05:46:20 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.askapache.com/?p=2540</guid>
		<description><![CDATA[<p><a class="IFL" href="http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html" id="id12"></a><strong>The goal is to add the HostGator server</strong> to be an exact mirror of the static.askapache.com domain, then to add that server as a 2nd A record to my DNS zone.  That way half the visitors to the size will be taking up resources and bandwidth on the <a href="http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=AskApache-rrdns">HostGator</a> server instead of mine.<br /><br /><strong>Round Robin A records</strong> in DNS are intended to evenly distribute queries between each host of the same name.  Using some tricks straight out of a hackers toolbox we can verify if the distribution is taking place.  (<a href="http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html#dns-robin-works">It is.</a>)  <br class="C" /></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html"></a><a href="http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html"><cite>AskApache.com</cite></a></p><p>My traffic is growing, alot, and I need to plan how I'm going to maintain scalability, high availability, and redundancy.   Scalability is an application's ability to support a growing number of users. High availability can be defined as redundancy or speed.  I decided to setup <a href="#dns-robin-round">Round Robin DNS</a> for <a href="http://static.askapache.com/">static.askapache.com</a>, which is the "static" <a href="http://www.askapache.com/htaccess/apache-speed-subdomains.html">subdomain</a> of <a href="http://www.askapache.com/">AskApache</a> that serves all the static assets like images, javascript, css, etc.. (<em>BTW, the z stands for ZAP</em>)..  All I needed to attempt setting this up was another hosting account on a separate server.  I have hosting accounts with around 10 different companies from working with various clients over the years, like <a href="http://www.powweb.com/join/index.bml?AffID=582654">Powweb</a> and I don't use them because they suck in terms of the unix environment.  Many of these web hosts are actually very fast bandwidth-wise..</p>

<h2><a id="#round-robin-concept" name="#round-robin-concept"></a>Round Robin Concept</h2>
<p><a class="IFL" href="#"><img src="http://uploads.askapache.com/2009/04/round-robin-dns.png" alt="Round Robin DNS" title="Round Robin DNS" width="396" height="335" class="size-full wp-image-2622" /></a><strong>A few months ago</strong> I was given a free hosting account on <a href="http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=AskApache-rrdns">HostGator</a> to evaluate and tempt me away from DreamHost to become a Gator.  I get a lot of these types of offers from time to time from the smaller Web companies who read AskApache.. but when I noticed the SSH access was jailed and saw how restrictive the shell was I felt like I was on a windows box..  I want a shell, cpanel sucks.  I compile and run everything from the shell so thats was a deal-breaker and I sorta forgot all about it.<br /><br /><strong>The goal is to add the HostGator server</strong> to be an <a href="http://www.askapache.com/security/mirror-using-rsync-ssh.html">exact mirror</a> of the static.askapache.com domain, then to add that server as a 2nd A record to my DNS zone.  That way half the visitors to the size will be taking up resources and bandwidth on the <a href="http://secure.hostgator.com/cgi-bin/affiliates/clickthru.cgi?id=AskApache-rrdns">HostGator</a> server instead of mine.<br /><br /><strong>Round Robin A records</strong> in DNS are intended to evenly distribute queries between each host of the same name.  Using some tricks straight out of a <a href="http://www.askapache.com/security/computer-security-toolbox-2.html">hackers toolbox</a> we can <a href="#dns-robin-works">verify if the distribution</a> is taking place.  (<a href="#dns-robin-works">It is.</a>)  <br class="C" /></p>


<h2><a id="#dns-robin-dns" name="#dns-robin-dns"></a>DNS - Domain Name System</h2>
<p>The Domain Name System is often analogized as a "phone book" for the Internet because it translates human-friendly computer hostnames into IP addresses. For example, <code>www.askapache.com</code> translates to <code>208.113.134.190</code>.  Every request for a human-friendly hostname first needs to be translated to the IP before the server can be queried.  Normally each hostname corresponds to exactly 1 IP address.  But in a Round Robin setup, the idea is to have the hostname correspond to multiple IP addresses, which are different servers that house the exact same content, resulting in some hosts requesting files from one server, and another host requesting files from the other server, resulting in less CPU resources and bandwidth.</p>
<p>Here is an the zone for <code>static.askapache.com</code> Round Robin records:</p>
<table summary="Round Robin DNS Records" id="ver-zebra"><colgroup><col class="e" /><col class="o" /><col class="e" /><col class="o" /><col class="e" /></colgroup><thead><tr><th scope="col" class="e">QUERY</th><th scope="col" class="o">TTL</th><th scope="col" class="e">CLASS</th><th scope="col" class="o">TYPE</th><th scope="col" class="e">ANSWER</th></tr></thead><tbody><tr><td>static.askapache.com</td><td>13084</td><td>IN</td><td>A</td><td>64.111.114.111</td></tr><tr><td>static.askapache.com</td><td>13084</td><td>IN</td><td>A</td><td>69.56.174.114</td></tr></tbody></table>


<h2><a id="#dns-robin-round" name="#dns-robin-round"></a>Round Robin DNS</h2>
<p>Round robin DNS is a technique of load distribution, load balancing, or fault-tolerance provisioning multiple, redundant Internet Protocol service hosts, e.g., Web servers, FTP servers, by managing the Domain Name System's (DNS) responses to address requests from client computers according to an appropriate statistical model.</p>
<p>In its simplest implementation Round-robin DNS works by responding to DNS requests not only with a single IP address, but a list of IP addresses of several servers that host identical services. The order in which IP addresses from the list are returned is the basis for the term round robin. With each DNS response, the IP address sequence in the list is permuted. Usually, basic IP clients attempt connections with the first address returned from a DNS query so that on different connection attempts clients would receive service from different providers, thus distributing the overall load among servers.</p>
<p>Round robin DNS is often used for balancing the load of geographically-distributed Web servers. For example, a company has one domain name and three identical web sites residing on three servers with three different IP addresses. When one user accesses the home page it will be sent to the first IP address. The second user who accesses the home page will be sent to the next IP address, and the third user will be sent to the third IP address. In each case, once the IP address is given out, it goes to the end of the list. The fourth user, therefore, will be sent to the first IP address, and so forth.</p>

<p>Although easy to implement, round robin DNS has problematic drawbacks, such as those arising from record caching in the DNS hierarchy itself, as well as client-side address caching and reuse, the combination of which can be difficult to manage. Round robin DNS should not solely be relied upon for service availability. If a service at one of the addresses in the list fails, the DNS will continue to hand out that address and clients will still attempt to reach the inoperable service.</p>



<h2><a id="#dns-robin-works" name="#dns-robin-works" title="Efficacy of DNS Load Balancing"></a>Does Round Robin Work</h2>
<p>Definately.  I can look at the access logs for both servers and see that they are splitting the requests nicely.   It is definately not an exact split however, look at these statistics and you'll see what I mean.</p>
<pre>$ dig @ns1.dreamhost.com +authority +all static.askapache.com
&nbsp;
;; ANSWER SECTION:
static.askapache.com.        14400   IN      A       69.56.174.114
static.askapache.com.        14400   IN      A       64.111.114.111
&nbsp;
$ dig @ns1.dreamhost.com +authority +all static.askapache.com
&nbsp;
;; ANSWER SECTION:
static.askapache.com.        14400   IN      A       64.111.114.111
static.askapache.com.        14400   IN      A       69.56.174.114</pre>

<p>The effects of caching will distort the effectiveness of any IP address allocation algorithm unless a 0 TTL is used which has the effect of significantly increasing the load on the DNS (and is not always implemented consistently). In this case the cure may be worse than the disease Good news we have good load balancing on our web servers. Bad news we need 17 more DNS servers!. Intuitively, and without running any experiments to verify, we would suggest that given a normal TTL (12 hours or more) and ANY IP allocation algorithm other than a single static list, loads should be reasonably balanced .</p>
<p><br /><strong>Full root server query</strong></p>
<pre>Tracing to static.askapache.com[a] via A.ROOT-SERVERS.NET, maximum of 3 retries
A.ROOT-SERVERS.NET [.] (198.41.0.4)
 |\___ L.GTLD-SERVERS.NET [com] (192.41.162.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ D.GTLD-SERVERS.NET [com] (192.31.80.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ J.GTLD-SERVERS.NET [com] (192.48.79.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ H.GTLD-SERVERS.NET [com] (192.54.112.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ E.GTLD-SERVERS.NET [com] (192.12.94.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ F.GTLD-SERVERS.NET [com] (192.35.51.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ I.GTLD-SERVERS.NET [com] (192.43.172.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ G.GTLD-SERVERS.NET [com] (192.42.93.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ B.GTLD-SERVERS.NET [com] (2001:0503:231d:0000:0000:0000:0002:0030) Not queried
 |\___ B.GTLD-SERVERS.NET [com] (192.33.14.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ A.GTLD-SERVERS.NET [com] (2001:0503:a83e:0000:0000:0000:0002:0030) Not queried
 |\___ A.GTLD-SERVERS.NET [com] (192.5.6.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ C.GTLD-SERVERS.NET [com] (192.26.92.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
 |\___ M.GTLD-SERVERS.NET [com] (192.55.83.30)
 |     |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
 |     |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
 |      \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
  \___ K.GTLD-SERVERS.NET [com] (192.52.178.30)
       |\___ ns3.dreamhost.com [askapache.com] (66.33.216.216) Got authoritative answer
       |\___ ns2.dreamhost.com [askapache.com] (208.96.10.221)
        \___ ns1.dreamhost.com [askapache.com] (66.33.206.206) Got authoritative answer
&nbsp;
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 64.111.114.111
  ns1.dreamhost.com (66.33.206.206)       static.askapache.com -&gt; 69.56.174.114
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 64.111.114.111
  ns3.dreamhost.com (66.33.216.216)       static.askapache.com -&gt; 69.56.174.114</pre>




<h2><a id="#dns-online-tools" name="#dns-online-tools"></a>Live Online DNS Tools</h2>
<ul>
<li><a href="http://member.dnsstuff.com/amember/go.php?r=323972&i=l0">DNSstuff.com - Your Destination for DNS and Networking Tools</a></li>
<li><a href="http://www.zonecheck.fr/cgi-bin/zc.cgi?zone=askapache.com&amp;ns0=ns1.dreamhost.com&amp;ips0=&amp;ns1=ns2.dreamhost.com&amp;ips1=&amp;ns2=ns3.dreamhost.com&amp;ips2=&amp;ns3=&amp;ips3=&amp;ns4=&amp;ips4=&amp;ns5=&amp;ips5=&amp;ns6=&amp;ips6=&amp;ns7=&amp;ips7=&amp;intro=t&amp;explain=t&amp;details=t&amp;progress=counter&amp;report=byseverity&amp;format=html&amp;lang=en&amp;errorlvl=allwarning&amp;profile=automatic&amp;chkmail=t&amp;chkzone=t&amp;chkrir=t&amp;transp3=ipv4&amp;transp3=ipv6&amp;transp4=std">ZoneCheck</a></li>
<li><a href="http://pingability.com/zoneinfo.jsp?domain=askapache.com">Quick Check - Pingability.com</a></li>
<li><a href="http://www.squish.net/dnscheck/dnscheck.cgi?host=askapache.com&amp;type=ANY&amp;show_rootservers=on&amp;removebroken=on&amp;cnameprocessing=on&amp;show_mainworkings=on&amp;show_resolving=on&amp;show_allservers=on&amp;getbindversions=on&amp;retries=5&amp;querylevel=15">Squishywishywoo: complete dns traversal checking</a></li>
<li><a href="http://www.zonecut.net/dns/?domain=askapache.com&amp;find_subs=on">ZoneCut DNS</a></li>
<li><a href="http://atrey.karlin.mff.cuni.cz/~mj/sleuth/?domain=askapache.com&amp;verbose=ON&amp;server=ns1.dreamhost.com&amp;serverip=&amp;action=Submit&amp;.cgifields=verbose">DNS Sleuth</a></li>
<li><a href="http://www.pweb.cz/en/dns-test/dom.php">DNS test - Domain name DNS test - pweb.cz</a></li>
<li><a href="http://www.opendns.com/support/cache/?d=static.askapache.com">OpenDNS - Support - CacheCheck</a></li>
<li><a href="http://www.dnscolos.com/dnsreport.php">DNSReport</a></li>
<li><a href="http://freedns.afraid.org/domain/dnstrace.php?domain=askapache.com&amp;submit=Trace">DNSTrace</a></li>
<li><a href="http://www.intodns.com/askapache.com">intoDNS</a></li>
<li><a href="http://www.dnsthru.com/">DNSthru.com</a></li>
<li><a href="http://demo.dnsdoctor.org/cgi-bin/diagnose.cgi?zone=askapache.com&amp;ns0=ns1.dreamhost.com&amp;ips0=&amp;ns1=ns2.dreamhost.com&amp;ips1=&amp;ns2=ns3.dreamhost.com&amp;ips2=&amp;ns3=&amp;ips3=&amp;ns4=&amp;ips4=67.19.1.10&amp;ns5=&amp;ips5=67.19.0.10&amp;ns6=&amp;ips6=67.18.150.114&amp;ns7=&amp;ips7=&amp;intro=t&amp;format=html&amp;lang=en&amp;testname=t&amp;explain=t&amp;details=t&amp;progress=testdesc&amp;errorlvl=allwarning&amp;dontstop=nostop&amp;profile=automatic&amp;report=byseverity&amp;chkmail=t&amp;transp3=ipv4&amp;transp3=ipv6&amp;transp4=std">DNS Doctor</a></li>
<li><a href="http://www.checkdns.net/powercheck.aspx">Power Check</a></li>
</ul>












<h2><a id="#dns-links" name="#dns-links"></a>More Reading</h2>
<ul>
<li><a href="http://www.zytrax.com/books/dns/ch9/rr.html">HOWTO - Configure Load Balancing</a></li>
<li><a href="http://ntrg.cs.tcd.ie/undergrad/4ba2.01/group8/DNS.html">Load Sharing with DNS</a></li>
</ul>




<h3><a id="#dns-rfc-list" name="#dns-rfc-list"></a>RFC's related to DNS</h3>
<ul>
  <li><a href="http://rfc.askapache.com/rfc920/rfc920.html" title="protocol,signature,resource,dnssec,records,response,record,dnskey,algorithm,standards,domain,server,resolver,security">RFC 920</a>:  Specified original TLDs: .arpa, .com, .edu, .org, .gov, .mil and two-character country codes</li>
  <li><a href="http://rfc.askapache.com/rfc1032/rfc1032.html">RFC 1032</a>:  Domain administrators guide</li>
  <li><a href="http://rfc.askapache.com/rfc1033/rfc1033.html">RFC 1033</a>:  Domain administrators operations guide</li>
  <li><a href="http://rfc.askapache.com/rfc1034/rfc1034.html">RFC 1034</a>:  Domain Names - Concepts and Facilities.</li>
  <li><a href="http://rfc.askapache.com/rfc1035/rfc1035.html">RFC 1035</a>:  Domain Names - Implementation and Specification</li>
  <li><a href="http://rfc.askapache.com/rfc1101/rfc1101.html">RFC 1101</a>:  DNS Encodings of Network Names and Other Types</li>
  <li><a href="http://rfc.askapache.com/rfc1123/rfc1123.html">RFC 1123</a>:  Requirements for Internet Hosts -- Application and Support</li>
  <li><a href="http://rfc.askapache.com/rfc1912/rfc1912.html">RFC 1912</a>:  Common DNS Operational and Configuration Errors</li>
  <li><a href="http://rfc.askapache.com/rfc1995/rfc1995.html">RFC 1995</a>:  Incremental Zone Transfer in DNS</li>
  <li><a href="http://rfc.askapache.com/rfc1996/rfc1996.html">RFC 1996</a>:  A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)</li>
  <li><a href="http://rfc.askapache.com/rfc2136/rfc2136.html">RFC 2136</a>:  Dynamic Updates in the domain name system (DNS UPDATE)</li>
  <li><a href="http://rfc.askapache.com/rfc2181/rfc2181.html">RFC 2181</a>:  Clarifications to the DNS Specification</li>
  <li><a href="http://rfc.askapache.com/rfc2182/rfc2182.html">RFC 2182</a>:  Selection and Operation of Secondary DNS Servers</li>
  <li><a href="http://rfc.askapache.com/rfc2308/rfc2308.html">RFC 2308</a>:  Negative Caching of DNS Queries (DNS NCACHE)</li>
  <li><a href="http://rfc.askapache.com/rfc2317/rfc2317.html">RFC 2317</a>:  Classless IN-ADDR.ARPA delegation</li>
  <li><a href="http://rfc.askapache.com/rfc2671/rfc2671.html">RFC 2671</a>:  Extension Mechanisms for DNS (EDNS0)</li>
  <li><a href="http://rfc.askapache.com/rfc3597/rfc3597.html">RFC 3597</a>:  Handling of Unknown DNS Resource Record (RR) Types</li>
  <li><a href="http://rfc.askapache.com/rfc3696/rfc3696.html">RFC 3696</a>:  Application Techniques for Checking and Transformation of Names</li>
  <li><a href="http://rfc.askapache.com/rfc4343/rfc4343.html">RFC 4343</a>:  Domain Name System (DNS) Case Insensitivity Clarification</li>
  <li><a href="http://rfc.askapache.com/rfc4592/rfc4592.html">RFC 4592</a>:  The Role of Wildcards in the Domain Name System</li>
  <li><a href="http://rfc.askapache.com/rfc4892/rfc4892.html">RFC 4892</a>:  Requirements for a Mechanism Identifying a Name Server Instance</li>
  <li><a href="http://rfc.askapache.com/rfc5001/rfc5001.html">RFC 5001</a>:  DNS Name Server Identifier Option (NSID)</li>
  <li>RFC 5395:  Domain Name System (DNS) IANA Considerations</li>
</ul>



<p class="wikicop">This page contains content by <a rel="nofollow" href="http://en.wikipedia.org/w/index.php?title=Round_robin_DNS&amp;action=history">Author</a> of <a href="http://en.wikipedia.org/wiki/Round_robin_DNS" rel="nofollow">Article</a> from <a href="http://en.wikipedia.org/wiki/Main_Page" rel="nofollow">Wikipedia</a> and is licensed under the <a href="http://www.askapache.com/gnu-fdl.txt" rel="nofollow">GNU FDL</a>.</p>

<p><br /><strong>Table of Contents</strong></p>
<ul>
<li><a href="#round-robin-concept">Round Robin Concept</a></li>
<li><a href="#dns-robin-dns">DNS - Domain Name System</a></li>
<li><a href="#dns-robin-round">Round Robin DNS</a></li>
<li><a href="#dns-robin-works">Efficacy of DNS Load Balancing</a></li>
<li><a href="#dns-online-tools">Live Online DNS Tools</a></li>
<li><a href="#dns-links">More Reading</a></li>
<li><a href="#dns-rfc-list">RFC's related to DNS</a></li>
</ul><p><a href="http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html"></a><a href="http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html">DNS Round Robin Configuration using Rsync over SSH</a> originally appeared on <cite>AskApache.com</cite> </p>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/linux/dns-round-robin-rsync-over-ssh.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>SPF Records on DreamHost</title>
		<link>http://www.askapache.com/hosting/howto-spf-records-dreamhost.html</link>
		<comments>http://www.askapache.com/hosting/howto-spf-records-dreamhost.html#comments</comments>
		<pubDate>Sat, 02 Dec 2006 00:47:07 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Hosting]]></category>

		<guid isPermaLink="false">http://www.askapache.com.com/seo/howto-spf-records-on-dreamhost.html</guid>
		<description><![CDATA[<p>Here are the steps that I take to get an SPF Record going on DreamHost</p>

<pre>v=spf1 mx ip4:64.111.100.0/24 ip4:66.33.201.0/24 ip4:66.33.216.0/24 ip4:208.97.1 32.0/24 ip4:208.97.187.0/24 ip4:208.113.200.0/24 ip4:208.113.244.0/24 ip4:64.18.0.0/20 ip4:74.125.148.0/22 include:aspmx.googlemail.com include:_spf.google.com ~all</pre>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/hosting/howto-spf-records-dreamhost.html"></a><a href="http://www.askapache.com/hosting/howto-spf-records-dreamhost.html"><cite>AskApache.com</cite></a></p><p>Here are the steps that I take to get an SPF Record going on DreamHost</p>


<h2>SPF records</h2>
Sender Policy Framework (<acronym title="Sender Policy Framework">SPF</acronym>) records allow domain owners to specify which hosts are permitted to send email on behalf of their domains. Normal SMTP allows any computer to send an email claiming to be from anyone. Thus, it's easy for spammers to send emails with forged From: addresses. SPF allows a domain owner to use a special format of DNS TXT records to specify which machines or hosts are authorized to transmit email for their domain; this makes it difficult to forge From: addresses.

For example, if you own the domain askapache.com, you can designate which hosts are authorized to send email originating from user@askapache.com. Your recipient's servers will then identify the origin of your message by checking the SPF record.

<h2>SPF For Gmail</h2>
Sender Policy Framework (SPF) records allow domain owners to specify which hosts are permitted to send email on behalf of their domains, making it hard to forge From: addresses. We strongly encourage you to publish SPF records for your domain -- having these records in place will ultimately help fight spam.

<h3>How do I set my SPF records?</h3>
To set your domain's SPF record, publish the following TXT record on the DNS resource: <code>v=spf1 include:aspmx.googlemail.com ~all</code>.
<ol>
	<li><a href="http://www.dnsstuff.com/tools/mail.ch?domain=askapache.com">Get the IP address for your mail server</a></li>
	<li><a href="http://emailtrackerpro.visualware.com/">Use this to find the Servers that send your mail</a></li>
</ol>

<h3>What about subdomains?</h3>
If I get mail from pielovers.demon.co.uk, and there's no SPF data for pielovers, should I go back one level and test SPF for demon.co.uk?

No. Each subdomain at Demon is a different customer, and each customer might have their own policy. It wouldn't make sense for Demon's policy to apply to all its customers by default; if Demon wants to do that, it can set up SPF records for each subdomain.

So the advice to SPF publishers is this: you should add an SPF record for each subdomain or hostname that has an A or MX record.

Sites with wildcard A or MX records should also have a wildcard SPF record, of the form: <code>* IN TXT "v=spf1 -all"</code>
<h3>What should an ISP keep in mind?</h3>
<ol>
	<li>Vanity domain holders may point to you using an include: directive. Keep in mind the overall processing limits will apply to their SPF record and yours together, so try to minimize the number of DNS lookups your record requires.</li>
	<li>You should support SASL AUTH on ports 25, 465 and 587. When your users need to phone home from an Internet cafe, port 25 may be blocked, but port 465 and 587 are not. Most modern mail clients support STARTTLS and SASL AUTH on port 587, but Microsoft Outlook and Outlook Express support the older SMTPS approach via a 'wrapped port' on port 465.</li>
	<li>You may want to set a default of "unknown" by saying "?all" instead of "-all" for the first few months, to accommodate legitimate users who have been sending mail through somebody else's servers.</li>
	<li>You can tell who these users are by adding an "exists:%{l}.%{i}._spf.ISP.COM" record, and grepping in your DNS server logs to see who's mailing through what machines. Then you can contact all nonconformant users and tell them to use your SMTP server.</li>
	<li>You should never publish -all for customers domains without the consent of your customers. They WILL have ways of sending mail that you don't know about. Keep your customers informed about your spf roll-out, this will prevent them from being unpleasantly surprised by mail that suddenly is not delivered due to spf FAIL results. Insufficient communication will drive up your support costs and result in your customers being less happy with both your service and SPF.</li>
</ol>
<h3>Can I run an SMTP server on my laptop?</h3>
If you run a personal domain, you can either not publish SPF records at all, or set up "v=spf1 ?all" for your domain, and you'll be able to send mail from your laptop no matter where you are. A better solution would be to set up your own smtp server that accepts mail from your laptop through POP-before-SMTP or SASL AUTH, so that you can still publish a more restrictive spf record.

If you are the customer of an ISP that publishes SPF records, your ISP should provide you with an SMTP server that you can authenticate to, using either POP-before-SMTP or SASL AUTH. Or you can ask them to exclude you from SPF using a user-specific "exists" mechanism.

<a href="http://wiki.dreamhost.com/index.php/SPF">DreamHost SPF Wiki</a> <a href="http://www.openspf.org/wizard.html?mydomain=askapache.com">Online SPF Wizard</a> <a href="http://new.openspf.org/FAQ">SPF Faq</a>

<strong>Basic DNS Records</strong> <code>A</code> Forward mapping of hostname (dreamhost.com) to an IP address (66.33.201.141). <code>PTR</code> Reverse mapping of an IP address (66.33.201.141) to a hostname (dreamhost.com). <code>MX</code> Mail eXchange records tell you which hostname to connect to for sending email. <code>CNAME</code> Say it, See Name, it points one domain name to another domain name, including mail service. <code>TXT</code> Text records, these are free form text strings, used for things like SPF. <code>SRV</code> Service records advertise a specific service a server offers (Not common on the internet). <code>NS</code> Delegates a domain or subdomain to another DNS server.

<strong>Do I have to publish spf for each of my smtp servers?</strong>
<blockquote>No (or better: probably not, you are asking the wrong question).

You should publish spf records for each and every domain you wish to protect from being used by spammers/virusses. If, for example, your domain is somedomain.tld and you furthermore have a subdomain www.somedomain.tld registered, you would publish for both somedomain.tld and www.subdomain.tld (the latter probably being set to "v=spf1 -all"). Note that you will have to publish for each and every A record, including any wildcard (*) or @ entries in your dns.

Why? Consider how spf works: when an spf aware mail server receives an incoming message it will request the spf record for the domain in the envelope from. If you only publish the spf record on somedomain.tld, and not on www.subdomain.tld, a forged message pretending from www.subdomain.tld will be happily accepted for lack of an spf record.</blockquote><p><a href="http://www.askapache.com/hosting/howto-spf-records-dreamhost.html"></a><a href="http://www.askapache.com/hosting/howto-spf-records-dreamhost.html">SPF Records on DreamHost</a> originally appeared on <cite>AskApache.com</cite> </p>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/hosting/howto-spf-records-dreamhost.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web Development Glossary</title>
		<link>http://www.askapache.com/glossary</link>
		<comments>http://www.askapache.com/glossary#comments</comments>
		<pubDate>Mon, 20 Nov 2006 00:12:56 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
		
		<guid isPermaLink="false">http://www.askapache.com/about/glossary/</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/glossary"></a><a href="http://www.askapache.com/glossary"><cite>AskApache.com</cite></a></p><p><a id="top">Web Development / Webmaster Glossary</a></p><p class="CENT"><a href="#A">A</a> | <a href="#B">B</a> | <a href="#C">C</a> | <a href="#D">D</a> | <a href="#E">E</a> | <a href="#F">F</a> | <a href="#G">G</a> | <a href="#H">H</a> | <a href="#I">I</a> | <a href="#L">L</a> | <a href="#M">M</a> | <a href="#N">N</a> | <a href="#O">O</a> | <a href="#P">P</a> | <a href="#R">R</a> | <a href="#S">S</a> | <a href="#T">T</a> | <a href="#U">U</a> | <a href="#V">V</a> | <a href="#W">W</a> | <a href="#X">X</a> | <a href="#Z">Z</a> | <a href="#otherglossary">other glossaries</a></p><p class="anote">This glossary defines some of the common terminology related to Apache in particular, and web serving in general.  More information on each concept is provided in the links.</p><hr class="C" /><p><a id="A"></a><a href="#top" class="tp"></a></p><dl><p><a id="accesscontrol"></a></p><dt>Access Control</dt><dd>The restriction of access to network realms. In an Apache context usually the restriction of access to certain <em>URLs</em>.<br />See: <a href="http://askapache.info/2.0/howto/auth.html">Authentication, Authorization, and Access Control</a> </dd><p><a id="account"></a></p><dt>Account</dt><dd>The term "account" is often used synonymously with username here at DynDNS. Both terms describe the name you use to log in to our system. An account is not the same as a hostname, which may be named differently.</dd><p><a id="age"></a></p><dt>age</dt><dd>The age of a response is the time since it was sent by, or successfully validated with, the origin server.</dd><p><a id="alias"></a></p><dt>Alias</dt><dd>See cname.</dd><p><a id="algorithm"></a></p><dt>Algorithm</dt><dd>An unambiguous formula or set of rules for solving a problem in a finite number of steps. Algorithms for encryption are usually called <dfn>Ciphers</dfn>. </dd><dt><a id="apacheextensiontool">APache eXtension Tool</a> <a id="apxs">(apxs)</a></dt><dd>A perl script that aids in compiling module sources into Dynamic Shared Objects ( dsos) and helps install them in the Apache Web server.<br />See: Manual Page: <code class='program'>&lt;a href="http://askapache.info/2.0/programs/apxs.html"&gt;apxs&lt;/a&gt;</code> </dd><p><a id="arecord"></a></p><dt>A Record</dt><dd>An A Record, short for Address Record, allows a numeric ipaddress to map to a more human-readable domain.  An A Record may also be referred to as a host or hostname.</dd><p><a id="authoritativenameserver"></a></p><dt>Authoritative Nameserver</dt><dd>A nameserver which has been configured to provide answers for a specific domain, rather than simply getting and caching data about domains from other nameservers.</dd><p><a id="authentication"></a></p><dt>Authentication</dt><dd>The positive identification of a network entity such as a server, a client, or a user.<br />See: <a href="http://askapache.info/2.0/howto/auth.html">Authentication, Authorization, and Access Control</a> </dd><dt>Advisory Committee</dt><dd>An Advisory Committee is a formal advisory body made up of representatives from the Internet community to advise ICANN on a particular issue or policy area.  Several are mandated by the ICANN Bylaws and others may be created as needed.  Advisory committees have no legal authority to act for ICANN, but report their findings and make recommendations to the ICANN Board.</dd><dt><a href="http://www.apnic.net">AfriNIC</a> - The Afican Network Information Center</dt><dd>AfriNIC is a Regional Internet Registry (RIR), and is a non-profit membership organization responsible for the administration and registration of Internet Protocol (IP) addresses in the Africa region.</dd><dt><a href="http://alac.icann.org">ALAC</a> - At-Large Advisory Committee</dt><dd>ICANN's At-Large Advisory Committee (ALAC) is responsible for considering and providing advice on the activities of the ICANN, as they relate to the interests of individual Internet users (the "At-Large" community).  ICANN, as a private sector, non-profit corporation with technical management responsibilities for the Internet's domain name and address system, will rely on the ALAC and its supporting infrastructure to involve and represent in ICANN a broad set of individual user interests.  On 31 October 2002, the ICANN Board adopted New Bylaws that establish the ALAC and authorize its supporting At-Large organizations.  (Article XI, Section 2(4) of the New Bylaws.) The New Bylaws, which are the result of ICANN's 2002 reform process, went into effect on 15 December 2002.  ALAC is to eventually consist of ten members selected by Regional At-Large Organizations, supplemented by five members selected by ICANN's Nominating Committee.  To allow the ALAC to begin functioning immediately, the Transition Article of the Interim Bylaws provides for the Board to appoint ten members (two from each of ICANN's five regions) to an Interim ALAC.  Underpinning the ALAC will be a network of self-organizing, self-supporting At-Large Structures throughout the world involving individual Internet users at the local or issue level.  The At-Large Structures (either existing organizations or newly formed for this purpose) will self-organize into five Regional At-Large Organizations (one in each ICANN region - Africa, Asia-Pacific, Europe, Latin America/Caribbean, and North America).  The Regional At-Large Organizations will manage outreach and public involvement and will be the main forum and coordination point in each region for public input to ICANN.</dd><dt><a href="http://www.apnic.net">APNIC</a> - The Asia Pacific Network Information Centre</dt><dd>APNIC is a Regional Internet Registry (RIR), and is a non-profit membership organization responsible for the administration and registration of Internet Protocol (IP) addresses in the Asia-Pacific region, including Japan, Korea, China, and Australia.</dd><dt><a href="http://www.arin.net">ARIN</a> - American Registry for Internet Numbers</dt><dd>ARIN is a Regional Internet Registry (RIR), and is a non-profit membership organization established for the purpose of the administration and registration of Internet Protocol (IP) addresses in North America, parts of the Caribbean, and sub-Saharan Africa.</dd><dt><a href="http://aso.icann.org">ASO</a> - Address Supporting Organization</dt><dd>The ASO advises the ICANN Board of Directors on policy issues relating to the allocation and management of Internet Protocol (IP) addresses.  The ASO selects two Directors for the ICANN Board.</dd></dl><hr class="C" /><p><a id="B"></a><a href="#top" class="tp"></a></p><dl><p><a id="bind"></a></p><dt>BIND</dt><dd>BIND (Berkeley Internet Name Domain) is an implementation of the dns protocol.  The BIND DNS server is used on the vast majority of Internet name servers, and is the reference implementation of the DNS specification.</dd></dl><hr class="C" /><p><a id="C"></a><a href="#top" class="tp"></a></p><dl><p><a id="contentnegotiation"></a></p><dt>content negotiation</dt><dd>The mechanism for selecting the appropriate representation when servicing a request, as described in section 12. The representation of entities in any response can be negotiated (including error responses).</dd><p><a id="cname"></a></p><dt>CNAME</dt><dd>A CNAME, or Canonical Name, is an alias for a host record.  When a name server looks up a name and finds a CNAME record, it instead looks up the canonical name.  A typical CNAME might be used to redirect a subdomain (such as mail.website.com), to a mail host (webmail.yourisp.com).</dd><p><a id="cache"></a></p><dt>cache</dt><dd>A program's local store of response messages and the subsystem that controls its message storage, retrieval, and deletion. A cache stores cacheable responses in order to reduce the response time and network bandwidth consumption on future, equivalent requests. Any client or server may include a cache, though a cache cannot be used by a server that is acting as a tunnel.</dd><p><a id="cacheable"></a></p><dt>cacheable</dt><dd>A response is cacheable if a cache is allowed to store a copy of the response message for use in answering subsequent requests. The rules for determining the cacheability of HTTP responses
 are defined in section 13. Even if a resource is cacheable, there may be additional constraints on whether a cache can use the cached copy for a particular request.</dd><p><a id="caching"></a></p><dt>Caching</dt><dd>Caching is a process where DNS servers store copies of information they receive from other DNS servers.  This reduces the number of requests a DNS server needs to make.  The amount of time that data is cached for is determined by its ttl. </dd><p><a id="client"></a></p><dt>Client</dt><dd>A client is any device or application that connects to a server. </dd><p><a id="cloaking"></a></p><dt>Cloaking</dt><dd>Cloaking is a method of redirection which hides the actual URL of your site from the viewer's address bar via frames.  Cloaking for non-credited users results in a popup ad being displayed the first time the page is accessed.  Users who have purchased any of our services will automatically have the advertising popup removed.</dd><p><a id="certificate"></a></p><dt>Certificate</dt><dd>A data record used for authenticating network entities such as a server or a client. A certificate contains X.509 information pieces about its owner (called the subject) and the signing certificationauthority (called the issuer), plus the owner's publickey and the signature made by the CA. Network entities verify these signatures using CA certificates.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><dt><a id="certificatsigningrequest">Certificate Signing Request</a> <a id="csr">(CSR)</a></dt><dd>An unsigned certificate for submission to a certificationauthority, which signs it with the privatekey of their CA <em>Certificate</em>. Once the CSR is signed, it becomes a real certificate.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><dt><a id="certificationauthority">Certification Authority</a> <a id="ca">(CA)</a></dt><dd>A trusted third party whose purpose is to sign certificates for network entities it has authenticated using secure means. Other network entities can check the signature to verify that a CA has authenticated the bearer of a certificate.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="cipher"></a></p><dt>Cipher</dt><dd>An algorithm or system for data encryption. Examples are DES, IDEA, RC4, etc.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="ciphertext"></a></p><dt>Ciphertext</dt><dd>The result after plaintext is passed through a cipher.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><dt><a id="commongatewayinterface">Common Gateway Interface</a> <a id="cgi">(CGI)</a></dt><dd>A standard definition for an interface between a web server and an external program that allows the external program to service requests. The interface was originally defined by NCSA but there is also an RFC project.<br />See: <a href="http://askapache.info/2.0/howto/cgi.html">Dynamic Content with CGI</a> </dd><p><a id="configurationdirective"></a></p><dt>Configuration Directive</dt><dd>See: directive</dd><p><a id="configurationfile"></a></p><dt>Configuration File</dt><dd>A text file containing directive that control the configuration of Apache.<br />See: <a href="http://askapache.info/2.0/configuring.html">Configuration Files</a> </dd><p><a id="connect"></a></p><dt>CONNECT</dt><dd>An HTTP method for proxying raw data channels over HTTP. It can be used to encapsulate other protocols, such as the SSL protocol. </dd><p><a id="context"></a></p><dt>Context</dt><dd>An area in the configurationfile where certain types of directive are allowed.<br />See: <a href="http://askapache.info/2.0/mod/directive-dict.html#Context">Terms Used to Describe Apache Directives</a> </dd><dt><a href="http://ccnso.icann.org">ccNSO</a> - The Country-Code Names Supporting Organization</dt><dd>The ccNSO is in the process of being established, with the ccNSO Assistance Group preparing the recommendations that are currently under discussion.  Upon completion, the purpose of the ccNSO is to engage and provide leadership in activities relevant to country-code top-level domains (ccTLDs).  This is achieved by 1) Developing policy recommendations to the ICANN Board, 2) Nurturing consensus across the ccNSO's community, including the name-related activities of ccTLDs; and 3) Coordinating with other ICANN SO's, Committees, or constituencies under ICANN.  The ccNSO selects one person to serve on the board.</dd><dt>CCTLD - Country Code Top Level Domain</dt><dd>Two letter domains, such as .uk (United Kingdom), .de (Germany) and .jp (Japan) (for example), are called country code top level domains (ccTLDs) and correspond to a country, territory, or other geographic location.  The rules and policies for registering domain names in the ccTLDs vary significantly and ccTLD registries limit use of the ccTLD to citizens of the corresponding country.  Some ICANN-accredited registrars provide registration services in the ccTLDs in addition to registering names in .biz, .com, .info, .name, .net and .org, however, ICANN does not specifically accredit registrars to provide ccTLD registration services.  For more information regarding registering names in ccTLDs, including a complete database of designated ccTLDs and managers, please refer to <a href="http://www.iana.org/cctld/cctld.htm">http://www.iana.org/cctld/cctld.htm</a>.</dd></dl><hr class="C" /><p><a id="D"></a><a href="#top" class="tp"></a></p><dl><p><a id="digitalsignature"></a></p><dt>Digital Signature</dt><dd>An encrypted text block that validates a certificate or other file. A certificationauthority creates a signature by generating a hash of the <em>Public Key</em> embedded in a <em>Certificate</em>, then encrypting the hash with its own <em>Private Key</em>. Only the CA's public key can decrypt the signature, verifying that the CA has authenticated the network entity that owns the <em>Certificate</em>.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="directive"></a></p><dt>Directive</dt><dd>A configuration command that controls one or more aspects of Apache's behavior.  Directives are placed in the configurationfile<br />See: <a href="http://askapache.info/2.0/mod/directives.html">Directive Index</a> </dd><dt><a id="dynamicsharedobject">Dynamic Shared Object</a> <a id="dso">(DSO)</a></dt><dd> module compiled separately from the Apache <code class='program'>&lt;a href="http://askapache.info/2.0/programs/httpd.html"&gt;httpd&lt;/a&gt;</code> binary that can be loaded on-demand.<br />See: <a href="http://askapache.info/2.0/dso.html">Dynamic Shared Object Support</a> </dd><p><a id="dns"></a></p><dt>DNS</dt><dd>DNS (the Domain Name System) provides mapping of hostname to ipaddress and back again.</dd><p><a id="dnsbl"></a></p><dt>DNSBL</dt><dd>A DNS-based Blackhole List, or DNSBL, is a record created by an Internet site contaning a list of IP addresses.  A DNSBL may be queried by other devices or applications.  The list is often (but not strictly) a collection of addresses which have been blocked due to abuse.</dd><p><a id="delegate"></a></p><dt>Delegate</dt><dd>To specify in DNS which nameserver handle a specific domain.  See also delegation.</dd><p><a id="delegation"></a></p><dt>Delegation</dt><dd>Used to refer to the current set of nameservers to which a domain has been delegated.  Before a nameserver is officially assigned to a domain, it must completely delegate.</dd><p><a id="domain"></a></p><dt>Domain</dt><dd>A domain, or domain name, is what identifies a group of computers on the Internet.  An example would be dyndns.com, which is the domain for many computers that use our service, where the name of a particular computer (in this case, the web server) would be www.  In other words, the full name of the computer is www.dyndns.com. A domain name is fullyqualifieddomainname when it is a complete hostname, e.g. "example.homeip.net" instead of simply "example".</dd><p><a id="dynamic"></a></p><dt>Dynamic</dt><dd>In the context of an ip, dynamic implies that it changes frequently. Often times, a person's IP address may change each ti
me that his or her computer reconnects to the Internet, regardless of dial-up or broadband service. <a href="http://www.askapache.com/glossary/">Dynamic DNS</a> is a service for users with Dynamic IP Adresses. Similarly, a service is also offered to users with a static address.</dd><p><a id="dynamicdns"></a></p><dt>Dynamic DNS</dt><dd>Dynamic DNS is a term used to describe services that alias a dynamic ip to a static hostname. This is the type of service we initially offered, and we plan to continue offering. Many ISPs charge, some up to $200/month, just for a static IP address.  We emulate this ability for little or no charge.</dd><dt>Domain Name Resolvers</dt><dd>Scattered across the Internet are thousands of computers - called "Domain Name Resolvers" or just plain "resolvers" - that routinely cache the information they receive from queries to the root servers.  These resolvers are located strategically with Internet Service Providers (ISPs) or institutional networks.  They are used to respond to a user's request to resolve a domain name - that is, to find the corresponding IP address.</dd><dt>DNS - Domain Name System</dt><dd>The Domain Name System (DNS) helps users to find their way around the Internet.  Every computer on the Internet has a unique address - just like a telephone number - which is a rather complicated string of numbers.  It is called its "IP address" (IP stands for "Internet Protocol").  IP Addresses are hard to remember.  The DNS makes using the Internet easier by allowing a familiar string of letters (the "domain name") to be used instead of the arcane IP address.  So instead of typing 207.151.159.3, you can type www.internic.net.  It is a "mnemonic" device that makes addresses easier to remember.</dd></dl><hr class="C" /><p><a id="E"></a><a href="#top" class="tp"></a></p><dl><p><a id="entity"></a></p><dt>entity</dt><dd>The information transferred as the payload of a request or response. An entity consists of metainformation in the form of entity-header fields and content in the form of an entity-body, as described in section 7.</dd><dt><a id="environmentvariable">Environment Variable</a> <a id="env-variable">(env-variable)</a></dt><dd>Named variables managed by the operating system shell and used to store information and communicate between programs.  Apache also contains internal variables that are referred to as environment variables, but are stored in internal Apache structures, rather than in the shell environment.<br />See: <a href="http://askapache.info/2.0/env.html">Environment Variables in Apache</a> </dd><p><a id="export-crippled"></a></p><dt>Export-Crippled</dt><dd>Diminished in cryptographic strength (and security) in order to comply with the United States' Export Administration Regulations (EAR). Export-crippled cryptographic software is limited to a small key size, resulting in <em>Ciphertext</em> which usually can be decrypted by brute force.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="explicitexpirationtime"></a></p><dt>explicit expiration time</dt><dd>The time at which the origin server intends that an entity should no longer be returned by a cache without further validation.</dd></dl><hr class="C" /><p><a id="F"></a><a href="#top" class="tp"></a></p><dl><p><a id="first-hand"></a></p><dt>first-hand</dt><dd>A response is first-hand if it comes directly and without unnecessary delay from the origin server, perhaps via one or more proxies. A response is also first-hand if its validity has just been checked directly with the origin server.</dd><p><a id="freshnesslifetime"></a></p><dt>freshness lifetime</dt><dd>The length of time between the generation of a response and its expiration time.</dd><p><a id="fresh"></a></p><dt>fresh</dt><dd>A response is fresh if its age has not yet exceeded its freshness lifetime.</dd><p><a id="filter"></a></p><dt>Filter</dt><dd>A process that is applied to data that is sent or received by the server.  Input filters process data sent by the client to the server, while output filters process documents on the server before they are sent to the client.  For example, the <code>INCLUDES</code> output filter processes documents for ssi.<br />See: <a href="http://askapache.info/2.0/filter.html">Filters</a> </dd><dt><a id="fully-qualifieddomain-name">Fully-Qualified Domain-Name</a> <a id="fqdn">(FQDN)</a></dt><dd>The unique name of a network entity, consisting of a hostname and a domain name that can resolve to an IP address. For example, <code>www</code> is a hostname, <code>example.com</code> is a domain name, and <code>www.example.com</code> is a fully-qualified domain name. </dd><p><a id="ftpserver"></a></p><dt>FTP server</dt><dd>FTP stands for File Transfer Protocol.  An FTP server is simply a file server, a simple way for people to access files on a particular computer from any other computer with Internet access.  DynDNS does not provide FTP access as part of its service.</dd><p><a id="fullyqualifieddomainname"></a></p><dt>Fully Qualified Domain Name</dt><dd>A Fully Qualified domain is a complete hostname, like that which you would use when connecting to a server on the Internet. Fully qualified hostnames must be used when updating with a client, e.g., if your hostname is "myhost.dnsalias.net", you must provide that entire hostname to the client, not simply "myhost".</dd></dl><hr class="C" /><p><a id="G"></a><a href="#top" class="tp"></a></p><dl><p><a id="gateway"></a></p><dt>gateway</dt><dd>A server which acts as an intermediary for some other server. Unlike a proxy, a gateway receives requests as if it were the origin server for the requested resource; the requesting client may not be aware that it is communicating with a gateway.</dd><p><a id="gtldservers"></a></p><dt>gTLD Servers</dt><dd>The gTLD servers are a set of nameservers which contain information about all domains in the com, net, and org top-level domains.</dd><dt><a href="http://gac.icann.org">GAC</a> - Governmental Advisory Committee</dt><dd>The GAC is an advisory committee comprising appointed representatives of national governments, multi-national governmental organizations and treaty organizations, and distinct economies.  Its function is to advise the ICANN Board on matters of concern to governments.  The GAC will operate as a forum for the discussion of government interests and concerns, including consumer interests.  As an advisory committee, the GAC has no legal authority to act for ICANN, but will report its findings and recommendations to the ICANN Board.  The Chairman of the GAC is Sharil Tarmizi of Malaysia.  The Secretariat of the GAC is based at the European Commission.</dd><dt>gTLD - Generic Top Level Domain</dt><dd>Most TLDs with three or more characters are referred to as "generic" TLDs, or "gTLDs".  They can be subdivided into two types, "sponsored" TLDs (sTLDs) and "unsponsored TLDs (uTLDs), as described in more detail below.  In the 1980s, seven gTLDs (.com, .edu, .gov, .int, .mil, .net, and .org) were created.  Domain names may be registered in three of these (.com, .net, and .org) without restriction; the other four have limited purposes.  Over the next twelve years, various discussions occurred concerning additional gTLDs, leading to the selection in November 2000 of seven new TLDs for introduction.  These were introduced in 2001 and 2002.  Four of the new TLDs (.biz, .info, .name, and .pro) are unsponsored.  The other three new TLDs (.aero, .coop, and .museum) are sponsored.  Generally speaking, an unsponsored TLD operates under policies established by the global Internet community directly through the ICANN process, while a sponsored TLD is a specialized TLD that has a sponsor representing the narrower community that is most affected by the TLD.  The sponsor thus carries out delegated policy-formulation responsibilities over many matters concerning the TLD.  A Sponsor is an organization to which is delegated some defined ongoing policy-formulation authority regarding the manner in which a particular sponsored TLD is operated.  T
he sponsored TLD has a Charter, which defines the purpose for which the sponsored TLD has been created and will be operated.  The Sponsor is responsible for developing policies on the delegated topics so that the TLD is operated for the benefit of a defined group of stakeholders, known as the Sponsored TLD Community, that are most directly interested in the operation of the TLD.  The Sponsor also is responsible for selecting the registry operator and to varying degrees for establishing the roles played by registrars and their relationship with the registry operator.  The Sponsor must exercise its delegated authority according to fairness standards and in a manner that is representative of the Sponsored TLD Community.</dd><dt><a href="http://gnso.icann.org">GNSO</a> - Generic Names Supporting Organization</dt><dd>The GNSO is the successor to the responsibilities of the Domain Name Supporting Organization (DNSO; see below) that relate to the generic top-level domains.  The GNSO is the body of six constituencies, as follows: the Commercial and Business constituency, the gTLD Registry constituency, the ISP constituency, the non-commercial constituency, the registrar's constituency, and the IP constituency.</dd></dl><hr class="C" /><p><a id="H"></a><a href="#top" class="tp"></a></p><dl><p><a id="handler"></a></p><dt>Handler</dt><dd>An internal Apache representation of the action to be performed when a file is called. Generally, files have implicit handlers, based on the file type. Normally, all files are simply served by the server, but certain file types are "handled" separately.  For example, the <code>cgi-script</code> handler designates files to be processed as cgi.<br />See: <a href="http://askapache.info/2.0/handler.html">Apache's Handler Use</a> </dd><p><a id="hash"></a></p><dt>Hash</dt><dd>A mathematical one-way, irreversable algorithm generating a string with fixed-length from another string of any length. Different input strings will usually produce different hashes (depending on the hash function). </dd><p><a id="headr"></a></p><dt>Header</dt><dd>The part of the http request and response that is sent before the actual content, and that contains meta-information describing the content. </dd><p><a id="htaccess-file"></a></p><dt>.htaccess</dt><dd>A configurationfile that is placed inside the web tree and applies configuration directive to the directory where it is placed and all sub-directories.  Despite its name, this file can hold almost any type of directive, not just access-control directives.<br />See: <a href="http://askapache.info/2.0/configuring.html">Configuration Files</a> </dd><p><a id="httpd.conf"></a></p><dt>httpd.conf</dt><dd>The main Apache configurationfile.  The default location is <code>/usr/local/apache2/conf/httpd.conf</code>, but it may be moved using run-time or compile-time configuration.<br />See: <a href="http://askapache.info/2.0/configuring.html">Configuration Files</a> </dd><dt><a id="hypertexttransferprotocol">HyperText Transfer Protocol</a> <a id="http">(HTTP)</a></dt><dd>The standard transmission protocol used on the World Wide Web.  Apache implements version 1.1 of the protocol, referred to as HTTP/1.1 and defined by <a href="http://rfc.askapache.com/rfc2616.txt">RFC 2616</a>. </dd><p><a id="https"></a></p><dt>HTTPS</dt><dd>The HyperText Transfer Protocol (Secure), the standard encrypted communication mechanism on the World Wide Web. This is actually just HTTP over ssl.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="hostname"></a></p><dt>Hostname</dt><dd>A hostname (also referred to as a "host"), is a computer's unique name on the Internet, which points to that computer's IP address.</dd><p><a id="heuristicexpirationtime"></a></p><dt>heuristic expiration time</dt><dd>An expiration time assigned by a cache when no explicit expiration time is available.</dd></dl><hr class="C" /><p><a id="I"></a><a href="#top" class="tp"></a></p><dl><p><a id="ipaddress"></a></p><dt>IP Address</dt><dd>An IP address is a numeric representation of a computer's location on a network.  It is similar to your street address, except it is for computers.  IP addresses look something like 207.127.235.88. They are often hard to remember numbers, and they certainly don't tell you very much about a computer. That is why we provide aliasing services. IP addresses can be static or dynamic.</dd><p><a id="isp"></a></p><dt>ISP</dt><dd>ISP stands for Internet Service Provider.  Your ISP is the company that provides you with access to the Internet, and assigns you an IP address.  Examples include AOL, UUNet, and MCI.</dd><dt><a href="http://www.iana.org">IANA</a> - Internet Assigned Numbers Authority</dt><dd>The IANA is the authority originally responsible for the oversight of IP address allocation, the coordination of the assignment of protocol parameters provided for in Internet technical standards, and the management of the DNS, including the delegation of top-level domains and oversight of the root name server system.  Under ICANN, the IANA continues to distribute addresses to the Regional Internet Registries, coordinate with the IETF and others to assign protocol parameters, and oversee the operation of the DNS.</dd><dt>ICANN</dt><dd>The Internet Corporation for Assigned Names and Numbers (ICANN) is an internationally organized, non-profit corporation that has responsibility for Internet Protocol (IP) address space allocation, protocol identifier assignment, generic (gTLD) and country code (ccTLD) Top-Level Domain name system management, and root server system management functions.  Originally, the Internet Assigned Numbers Authority (IANA) and other entities performed these services under U.S.  Government contract.  ICANN now performs the IANA function.  As a private-public partnership, ICANN is dedicated to preserving the operational stability of the Internet; to promoting competition; to achieving broad representation of global Internet communities; and to developing policy appropriate to its mission through bottom-up, consensus-based processes.  The DNS translates the domain name you type into the corresponding IP address, and connects you to your desired website.  The DNS also enables email to function properly, so the email you send will reach the intended recipient.</dd><dt>IDNs - Internationalized Domain Names</dt><dd>Internationalized Domain Names, or IDNs, are web addresses in your own language.  Many efforts are underway in the Internet community to make domain names available in character sets other than ASCII.  These "internationalized domain name" (IDN) efforts were the subject of a 25 September 2000 resolution by the ICANN Board of Directors, in which it recognized "that it is important that the Internet evolve to be more accessible to those who do not use the ASCII character set," but stressed that "the internationalization of the Internet's domain name system must be accomplished through standards that are open, non-proprietary, and fully compatible with the Internet's existing end-to-end model and that preserve globally unique naming in a universally resolvable public name space."</dd><dt><a href="http://www.ietf.org">IETF</a> - Internet Engineering Task Force</dt><dd>The IETF is a large open international community of network designers, operators, vendors, and researchers concerned with the evolution of the Internet architecture and the smooth operation of the Internet.  It is open to any interested individual.</dd><dt>IP - Internet Protocol</dt><dd>The communications protocol underlying the Internet, IP allows large, geographically diverse networks of computers to communicate with each other quickly and economically over a variety of physical links.  An Internet Protocol Address is the numerical address by which a location in the Internet is identified.  Computers on the Internet use IP addresses to route traffic and establish connections among themselves; people generally use the human-friendly names made possible by the Domain Name System.</dd><dt><a href="http://www.isoc.org">ISOC</a> - The Internet Society</dt><dd>The Int
ernet Society is the international organization for global cooperation and coordination for the Internet and its internetworking technologies and applications.  ISOC membership is open to any interested person.</dd><dt>ISP - Internet Service Provider</dt><dd>An ISP is a company, which provides access to the Internet to organizations and/or individuals.  Access services provided by ISPs may include web hosting, email, VoIP (voice over IP), and support for many other applications.</dd></dl><p><a id="L">L</a></p><dl><dt><a href="http://www.lacnic.net">LACNIC</a> - Latin American and Caribbean Internet Addresses Registry</dt><dd>LACNIC is a Regional Internet Registry (RIR) for Latin America and the Caribbean.</dd></dl><hr class="C" /><p><a id="M"></a><a href="#top" class="tp"></a></p><dl><p><a id="method"></a></p><dt>Method</dt><dd>In the context of http, an action to perform on a resource, specified on the request line by the client.  Some of the methods available in HTTP are <code>GET</code>, <code>POST</code>, and <code>PUT</code>. </dd><p><a id="messagedigest"></a></p><dt>Message Digest</dt><dd>A hash of a message, which can be used to verify that the contents of the message have not been altered in transit.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="mime-type"></a></p><dt>MIME-type</dt><dd>A way to describe the kind of document being transmitted.  Its name comes from that fact that its format is borrowed from the Multipurpose Internet Mail Extensions.  It consists of a major type and a minor type, separated by a slash.  Some examples are <code>text/html</code>, <code>image/gif</code>, and <code>application/octet-stream</code>.  In HTTP, the MIME-type is transmitted in the <code>Content-Type</code> header.<br />See: <a href="http://askapache.info/2.0/mod/mod_mime.html">mod_mime</a> </dd><p><a id="module"></a></p><dt>Module</dt><dd>An independent part of a program.  Much of Apache's functionality is contained in modules that you can choose to include or exclude.  Modules that are compiled into the Apache <code class='program'>&lt;a href="http://askapache.info/2.0/programs/httpd.html"&gt;httpd&lt;/a&gt;</code> binary are called <dfn>static modules</dfn>, while modules that are stored separately and can be optionally loaded at run-time are called <dfn>dynamic modules</dfn> or dso. Modules that are included by default are called <dfn>base modules</dfn>. Many modules are available for Apache that are not distributed as part of the Apache HTTP Server tarball.  These are referred to as <dfn>third-party modules</dfn>.<br />See: <a href="http://askapache.info/2.0/mod/">Module Index</a> </dd><dt><a id="modulemagicnumber">Module Magic Number</a> (<a id="mmn">MMN</a>)</dt><dd>Module Magic Number is a constant defined in the Apache source code that is associated with binary compatibility of modules. It is changed when internal Apache structures, function calls and other significant parts of API change in such a way that binary compatibility cannot be guaranteed any more. On MMN change, all third party modules have to be at least recompiled, sometimes even slightly changed in order to work with the new version of Apache. </dd><p><a id="mailexchanger"></a></p><dt>Mail eXchanger (MX)</dt><dd>A Mail eXchanger is a type of DNS record that allows you to control the delivery of mail for a given domain or subdomain. Multiple MX records may be present, in case the primary exchanger fails.</dd></dl><p><a id="N">N</a></p><dl><p><a id="nameserver"></a></p><dt>Nameserver</dt><dd>A nameserver is a server which has been set up to answer DNS queries, and provide information about a certain set of domain.</dd></dl><p><a id="O">O</a></p><dl><p><a id="originserver"></a></p><dt>origin server</dt><dd>The server on which a given resource resides or is to be created. </dd><p><a id="openssl"></a></p><dt>OpenSSL</dt><dd>The Open Source toolkit for SSL/TLS<br />See <a href="http://www.openssl.org/">http://www.openssl.org/</a># </dd></dl><hr class="C" /><p><a id="P"></a><a href="#top" class="tp"></a></p><dl><p><a id="proxy"></a></p><dt>proxy</dt><dd>An intermediary program which acts as both a server and a client for the purpose of making requests on behalf of other clients. Requests are serviced internally or by passing them on, with possible translation, to other servers. A proxy MUST implement both the client and server requirements of this specification. A "transparent proxy" is a proxy that does not modify the request or response beyond what is required for proxy authentication and identification. A "non-transparent proxy" is a proxy that modifies the request or response in order to provide some added service to the user agent, such as group annotation services, media type transformation, protocol reduction, or anonymity filtering. Except where either transparent or non-transparent behavior is explicitly stated, the HTTP proxy requirements apply to both types of proxies.</dd><p><a id="passphrase"></a></p><dt>Pass Phrase</dt><dd>The word or phrase that protects private key files. It prevents unauthorized users from encrypting them. Usually it's just the secret encryption/decryption key used for cipher.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="plaintext"></a></p><dt>Plaintext</dt><dd>The unencrypted text.</dd><p><a id="privatekey"></a></p><dt>Private Key</dt><dd>The secret key in a publickeycryptography system, used to decrypt incoming messages and sign outgoing ones.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="proxy-1"></a></p><dt>Proxy</dt><dd>An intermediate server that sits between the client and the <em>origin server</em>.  It accepts requests from clients, transmits those requests on to the origin server, and then returns the response from the origin server to the client.  If several clients request the same content, the proxy can deliver that content from its cache, rather than requesting it from the origin server each time, thereby reducing response time.<br />See: <a href="http://askapache.info/2.0/mod/mod_proxy.html">mod_proxy</a> </dd><p><a id="publickey"></a></p><dt>Public Key</dt><dd>The publicly available key in a publickeycryptography system, used to encrypt messages bound for its owner and to decrypt signatures made by its owner.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="publickeycryptography"></a></p><dt>Public Key Cryptography</dt><dd>The study and application of asymmetric encryption systems, which use one key for encryption and another for decryption. A corresponding pair of such keys constitutes a key pair. Also called Asymmetric Cryptography. <br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="ptrrecords"></a></p><dt>PTR Records</dt><dd>PTR records are a reverse lookup for an A record.  Due to the nature of DNS and the way reverse lookups work, PTR records can only be controlled by your ISP.</dd><p><a id="phishing"></a></p><dt>Phishing</dt><dd>Phishing refers to an attempt to fraudulently acquire sensitive information, such as passwords and credit card details, by posing as a trustworthy person or business in an apparently official electronic communication, such as an email, instant message, or website. </dd><p><a id="pseudo-static"></a></p><dt>Pseudo-Static</dt><dd>The term pseudo-static, which is used in the Custom DNS service, has to do with how long other DNS servers will cache a particular host's IP. It is a compromise between the dynamic and the static settings. It is most appropriate for those people who have an IP address that is mostly static, but occasionally changes.</dd></dl><hr class="C" /><p><a id="R"></a><a href="#top" class="tp"></a></p><dl><p><a id="resource"></a></p><dt>resource</dt><dd>A network data object or service that can be identified by a URI, as defined in section 3.2. Resources may be available in multiple representations (e.g. multiple languages, data formats, size, and resolutions) or vary in other ways.</dd><dt><a id="regularexpresion">Regular Expression</a> <a id="regex">(Regex)</a></dt><dd>
A way of describing a pattern in text - for example, "all the words that begin with the letter A" or "every 10-digit phone number" or even "Every sentence with two commas in it, and no capital letter Q". Regular expressions are useful in Apache because they let you apply certain attributes against collections of files or resources in very flexible ways - for example, all .gif and .jpg files under any "images" directory could be written as "<code>/images/.*(jpg|gif)$</code>".  Apache uses Perl Compatible Regular Expressions provided by the <a href="http://www.pcre.org/">PCRE</a> library. </dd><p><a id="reverseproxy"></a></p><dt>Reverse Proxy</dt><dd>A proxy server that appears to the client as if it is an <em>origin server</em>.  This is useful to hide the real origin server from the client for security reasons, or to load balance. </dd><p><a id="registrar"></a></p><dt>Registrar</dt><dd>Your registrar is the organization through whom you've registered your domain. <a href="http://www.dyndns.com/">DynDNS</a>, for example, is a registrar for com/net/org domains (and some others).</dd><p><a id="rootservers"></a></p><dt>Root Servers</dt><dd>The root servers are nameservers that all other nameservers on the Internet know about, and contain very basic information about the DNS system, which will lead other servers along the path to finding out specific information about a host.</dd><p><a id="representation"></a></p><dt>representation</dt><dd>An entity included with a response that is subject to content negotiation, as described in section 12. There may exist multiple representations associated with a particular response status.</dd><dt>RGP - Redemption Grace Period</dt><dd>Problems and complaints relating to deletion of domain-name registrations are very common.  Businesses and consumers are losing the rights to their domain names through registration deletions caused by mistake, inadvertence, or fraud.  Current procedures for correcting these mistakes have proven inadequate.  To move toward a solution to these problems ICANN developed the RGP.  How it works:  Now, the "delete" of a domain name (whether inside or outside of any applicable grace period) will result in a 30-day Deleted Name Redemption Grace Period.  This grace period will allow the domain name registrant, registrar, and/or registry time to detect and correct any mistaken deletions.  During this 30-day period, the deleted name will be placed on REGISTRY-HOLD, which will cause the name to be removed from the zone.  (The domain name will not function/resolve.) This feature will help ensure notice to the registrant that the name is subject to deletion at the end of the RGP, even if the contact data the registrar has for the registrant is no longer accurate.  During the Redemption Grace Period, registrants can redeem their registrations through registrars.  Registrars would redeem the name in the registry for the original registrant by paying renewal fees, plus a service charge, to the registry operator.  Any party requesting redemption would be required to prove its identity as the original registrant of the name.  After the 30-day period when the domain name can be redeemed, there is a 5-day period when the domain essentially is pending deletion.  This timeframe is implemented to facilitate notice to all registrars before a domain is finally deleted.</dd><dt>Registrar</dt><dd>Domain names ending with .aero, .biz, .com, .coop, .info, .museum, .name, .net, .org, and .pro can be registered through many different companies (known as "registrars") that compete with one another.  The registrar you choose will ask you to provide various contact and technical information that makes up the registration.  The registrar will then keep records of the contact information and submit the technical information to a central directory known as the "registry." This registry provides other computers on the Internet the information necessary to send you e-mail or to find your web site.  You will also be required to enter a registration contract with the registrar, which sets forth the terms under which your registration is accepted and will be maintained.</dd><dt>Registry</dt><dd>The "Registry" is the authoritative, master database of all domain names registered in each Top Level Domain.  The registry operator keeps the master database and also generates the "zone file" which allows computers to route Internet traffic to and from top-level domains anywhere in the world.  Internet users don't interact directly with the registry operator; users can register names in TLDs including .biz, .com, .info, .net, .name, .org by using an ICANN-Accredited Registrar.</dd><dt>RIR - Regional Internet Registry</dt><dd>There are currently five RIRs: AfriNIC, APNIC, ARIN, LACNIC and RIPE NCC.  These non-profit organizations are responsible for distributing IP addresses on a regional level to Internet service providers and local registries.</dd><dt><a href="http://www.ripe.net/">RIPE and RIPE NCC</a> - RÃƒÂ©seaux IP EuropÃƒÂ©ens</dt><dd>RIPE is an open and voluntary organization, which consists of European Internet service providers.  The RIPE NCC acts as the Regional Internet Registry (RIR) for Europe and surrounding areas, performs coordination activities for the organizations participating in RIPE, and allocates blocks of IP address space to its Local Internet Registries (LIRs), which then assign the addresses to end-users.</dd><dt>Root Servers</dt><dd>The root servers contain the IP addresses of all the TLD registries - both the global registries such as .com, .org, etc.  and the 244 country-specific registries such as .fr (France), .cn (China), etc.  This is critical information.  If the information is not 100% correct or if it is ambiguous, it might not be possible to locate a key registry on the Internet.  In DNS parlance, the information must be unique and authentic.</dd></dl><hr class="C" /><p><a id="S"></a><a href="#top" class="tp"></a></p><dl><p><a id="stale"></a></p><dt>stale</dt><dd>A response is stale if its age has passed its freshness lifetime.</dd><p><a id="semanticallytransparent"></a></p><dt>semantically transparent</dt><dd>A cache behaves in a "semantically transparent" manner, with respect to a particular response, when its use affects neither the requesting client nor the origin server, except to improve performance. When a cache is semantically transparent, the client receives exactly the same response (except for hop-by-hop headers) that it would have received had its request been handled directly by the origin server.</dd><p><a id="server"></a></p><dt>server</dt><dd>An application program that accepts connections in order to service requests by sending back responses. Any given program may be capable of being both a client and a server; our use of these terms refers only to the role being performed by the program for a particular connection, rather than to the program's capabilities in general. Likewise, any server may act as an origin server, proxy, gateway, or tunnel, switching behavior based on the nature of each request.</dd><dt><a id="securesocketslayer">Secure Sockets Layer</a> <a id="ssl">(SSL)</a></dt><dd>A protocol created by Netscape Communications Corporation for general communication authentication and encryption over TCP/IP networks.  The most popular usage is <em>HTTPS</em>, i.e. the HyperText Transfer Protocol (HTTP) over SSL.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><dt><a id="serversideincludes">Server Side Includes</a> <a id="ssi">(SSI)</a></dt><dd>A technique for embedding processing directives inside HTML files.<br />See: <a href="http://askapache.info/2.0/howto/ssi.html">Introduction to Server Side Includes</a> </dd><p><a id="session"></a></p><dt>Session</dt><dd>The context information of a communication in general.</dd><p><a id="ssleay"></a></p><dt>SSLeay</dt><dd>The original SSL/TLS implementation library developed by Eric A. Young </dd><p><a id="symmetriccryptophraphy"></a></p><dt>Symmetric Cryptography</dt><dd>The stu
dy and application of <em>Ciphers</em> that use a single secret key for both encryption and decryption operations.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="secondarydns"></a></p><dt>Secondary DNS</dt><dd>Secondary DNS is one of our paid service offerings.  It provides backup DNS servers that download information from your primary DNS server and share its load.</dd><p><a id="spam"></a></p><dt>Spam</dt><dd>Spam is defined as unsolicited commercial or bulk e-mail (UCE or UBE).  A close synonym would be "junk mail".</dd><p><a id="static"></a></p><dt>Static</dt><dd>Static means unchanging, not moving.  In the context of an ip, it means that the address stays the same each time that you logon or connect to the Internet. Most static IP addresses are on permanent connections, that stay on the Internet all the time, but some are on home dialup connections.  Connections that are not static are called dynamic.</dd><p><a id="subdomain"></a></p><dt>Subdomain</dt><dd>A subdomain is somewhere in-between a domain name and a hostname (see above).  A subdomain adds another level to a domain; an example would be is.mine.nu, a subdomain of mine.nu.  Users who have purchased upgrade credit(s) can delegate a static host that they own to their own DNS server(s), or to the Custom DNS service.</dd><dt><a href="http://secsac.icann.org">SESAC</a> - Security and Stability Advisory Committee</dt><dd>The President's standing committee on the security and stability of the Internet's naming and address allocation systems.  Their charter includes a focus on risk analysis and auditing.  SESAC consists of approximately 20 technical experts from industry and academia as well as operators of Internet root servers, registrars, and TLD registries.</dd><dt>SO - Supporting Organizations</dt><dd>The SOs are the three specialized advisory bodies that will advise the ICANN Board of Directors on issues relating to domain names (GNSO and CCNSO) and, IP addresses (ASO). </dd></dl><hr class="C" /><p><a id="T"></a><a href="#top" class="tp"></a></p><dl><p><a id="tunnel"></a></p><dt>tunnel</dt><dd>An intermediary program which is acting as a blind relay between two connections. Once active, a tunnel is not considered a party to the HTTP communication, though the tunnel may have been initiated by an HTTP request. The tunnel ceases to exist when both ends of the relayed connections are closed.</dd><p><a id="tarball"></a></p><dt>Tarball</dt><dd>A package of files gathered together using the <code>tar</code> utility. Apache distributions are stored in compressed tar archives or using pkzip. </dd><dt><a id="transportlayersecurity">Transport Layer Security</a> <a id="tls">(TLS)</a></dt><dd>The successor protocol to SSL, created by the Internet Engineering Task Force (IETF) for general communication authentication and encryption over TCP/IP networks. TLS version 1 and is nearly identical with SSL version 3.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd><p><a id="ttl"></a></p><dt>TTL</dt><dd>TTL stands for "Time To Live" and is the amount of time in seconds that a DNS record will be cached by an outside DNS server.</dd><p><a id="tarpitting"></a></p><dt>Tarpitting</dt><dd>Tarpitting refers to the practice of attempting to starve the resources of a spammer or <a href="http://www.catb.org/~esr/jargon/html/meaning-of-hack.html">hacker</a> by holding open a connection until it times out.  This tactic is, in general, not particularly effective, and, when used in combination with any of our MailHop services, can cause serious problems, and should not be used.</dd><dt>TLD - Top-level Domain</dt><dd>TLDs are the names at the top of the DNS naming hierarchy.  They appear in domain names as the string of letters following the last (rightmost) ".", such as "net" in "www.example.net".  The administrator for a TLD controls what second-level names are recognized in that TLD.  The administrators of the "root domain" or "root zone" control what TLDs are recognized by the DNS.  Commonly used TLDs include .com, .net, .edu, .jp, .de, etc.</dd></dl><hr class="C" /><p><a id="U"></a><a href="#top" class="tp"></a></p><dl><p><a id="useragent"></a></p><dt>user agent</dt><dd>The client which initiates a request. These are often browsers, editors, spiders (web-traversing robots), or other end user tools. </dd><p><a id="upstreamdownstream"></a></p><dt>upstream/downstream</dt><dd>Upstream and downstream describe the flow of a message: all messages flow from upstream to downstream. inbound/outbound Inbound and outbound refer to the request and response paths for messages: "inbound" means "traveling toward the origin server", and "outbound" means "traveling toward the user agent"</dd><dt><a id="uniformresourcelocator">Uniform Resource Locator</a> <a title="url" href="#url">(URL)</a></dt><dd>The name/address of a resource on the Internet.  This is the common informal term for what is formally called a uniformresourceidentifier. URLs are usually made up of a scheme, like <code>http</code> or <code>https</code>, a hostname, and a path.  A URL for this page is <code>http://askapache.info/2.0/glossary.html</code>. </dd><dt><a id="uniformresourceidentifier">Uniform Resource Identifier</a> <a id="URI">(URI)</a></dt><dd>A compact string of characters for identifying an abstract or physical resource.  It is formally defined by <a href="http://rfc.askapache.com/rfc2396/">RFC 2396</a>.  URIs used on the world-wide web are commonly referred to as url. </dd><p><a id="url"></a></p><dt>URL</dt><dd>A Uniform Resource Locator, or URL, is used as a standard way of specifying the location of a web page or other object on the Internet.  URLs often appear on web pages as links to other sites.</dd><p><a id="update"></a></p><dt>Update</dt><dd>Updating is simply the process of changing the information associated with a host in our system. This is usually performed by a client when the user's dynamic ip changes.</dd><p><a id="upload"></a></p><dt>Upload</dt><dd>To upload means to copy a file from the local system you are working on to a (usually larger) "host" or "server".  DynDNS does not allow uploading to its servers; any web page you want to host using our service, you must store and host on your own machine connected to the Internet.</dd><dt>UDRP - Uniform Dispute Resolution Policy</dt><dd>All ICANN-accredited registrars follow a uniform dispute resolution policy.  Under that policy, disputes over entitlement to a domain-name registration are ordinarily resolved by court litigation between the parties claiming rights to the registration.  Once the courts rule who is entitled to the registration, the registrar will implement that ruling.  In disputes arising from registrations allegedly made abusively (such as "cybersquatting" and cyberpiracy"), the uniform policy provides an expedited administrative procedure to allow the dispute to be resolved without the cost and delays often encountered in court litigation.</dd></dl><hr class="C" /><p><a id="V"></a><a href="#top" class="tp"></a></p><dl><p><a id="validator"></a></p><dt>validator</dt><dd>A protocol element (e.g., an entity tag or a Last-Modified time) that is used to find out whether a cache entry is an equivalent copy of an entity.</dd><p><a id="variant"></a></p><dt>variant</dt><dd>A resource may have one, or more than one, representation(s) associated with it at any given instant. Each of these representations is termed a `varriant'.  Use of the term `variant' does not necessarily imply that the resource is subject to content negotiation.</dd><p><a id="virtualhosting"></a></p><dt>Virtual Hosting</dt><dd>Serving multiple websites using a single instance of Apache. <em>IP virtual hosting</em> differentiates between websites based on their IP address, while <em>name-based virtual hosting</em> uses only the name of the host and can therefore host many sites on the same IP address.<br />See: <a href="http://askapache.info/2.0/vhosts/">Apache Virtual Host documentation</a> </d
d></dl><hr class="C" /><p><a id="W"></a><a href="#top" class="tp"></a></p><dl><p><a id="webredirection"></a></p><dt>Web Redirection</dt><dd>Web Redirection (otherwise known as HTTP redirection) allows a short hostname to be substituted in the place of a longer, ugly, hard-to-remember (or otherwise unwanted) URL.</dd><p><a id="wildcard"></a></p><dt>Wildcard</dt><dd>Wildcards add an alias to *.yourhost.ourdomain.ext pointing to the same IP address as entered for yourhost.ourdomain.ext.</dd><dt><a href="http://www.w3c.org">W3C</a> - World Wide Web Consortium</dt><dd>The W3C is an international industry consortium founded in October 1994 to develop common protocols that promote the evolution of the World Wide Web and ensure its interoperability.  Services provided by the Consortium include: a repository of information about the World Wide Web for developers and users; reference code implementations to embody and promote standards; and various prototype and sample applications to demonstrate use of new technology.</dd><dt><a href="http://www.wipo.org">WIPO</a> - World Intellectual Property Organization</dt><dd>WIPO is an intergovernmental organization based in Geneva, Switzerland responsible for the promotion of the protection of intellectual rights throughout the world.  It is one of the 16 specialized agencies of the United Nations system of organizations.</dd><dt>WHOIS</dt><dd>Information about who is responsible for domain names is publicly available to allow rapid resolution of technical problems and to permit enforcement of consumer protection, trademark, and other laws.  The registrar will make this information available to the public on a "Whois" site.  It is however possible to register a domain in the name of a third party, as long as they agree to accept responsibility -- ask your registrar for further details.</dd></dl><p><a id="X"></a></p><dl><p><a id="x.509"></a></p><dt>X.509</dt><dd>An authentication certificate scheme recommended by the International Telecommunication Union (ITU-T) which is used for SSL/TLS authentication.<br />See: <a href="http://askapache.info/2.0/ssl/">SSL/TLS Encryption</a> </dd></dl><p><a id="otherglossaries">Webmaster Glossary Links</a></p><ul><li><a href="http://www.w3.org/Architecture/Terms.html">W3C Architecture Domain - Terms</a></li><li><a href="http://www.w3.org/Terms">Hypertext Terms</a></li><li><a href="http://www.w3.org/People/Berners-Lee/Weaving/glossary.html">Weaving the Web - Berners-Lee</a></li><li><a href="http://www.w3.org/WAI/GL/Glossary/printable">Web Accessibility glossary</a></li><li><a href="http://www.w3.org/QA/glossary">Quality Assurance glossary</a></li><li><a href="http://www.webmasterworld.com/glossary/index.htm">WebmasterWorld</a></li><li><a href="http://www.google.com/support/analytics/bin/static.py?page=glossary.html">Google Glossary</a></li><li><a href="http://dublincore.org/documents/usageguide/glossary.shtml">Dublin Core</a></li><li><a href="http://about.ask.com/en/docs/about/search_terminology.shtml">Glossary of Ask.com Search Results Terminology</a></li><li><a href="http://smallbusiness.yahoo.com/webhosting/glossary.html">Yahoo! Web Hosting Glossary</a></li></ul><p><a href="http://www.askapache.com/glossary"></a><a href="http://www.askapache.com/glossary">Web Development Glossary</a> originally appeared on <cite>AskApache.com</cite> </p>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/glossary/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Links to htaccess tutorials and articles</title>
		<link>http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html</link>
		<comments>http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html#comments</comments>
		<pubDate>Thu, 09 Nov 2006 01:58:45 +0000</pubDate>
		<dc:creator>AskApache</dc:creator>
				<category><![CDATA[Htaccess]]></category>

		<guid isPermaLink="false">http://www.askapache.com.com/htaccess-forum/best-htaccess-tutorials-and-articles.html</guid>
		<description><![CDATA[<p>Links to htaccess tutorials and howtos in the <a href="http://www.htaccesselite.com">htaccess forum</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html"></a><a href="http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html"><cite>AskApache.com</cite></a></p><p>Links to htaccess tutorials and howtos in the <a href="http://www.htaccesselite.com">htaccess forum</a></p>
<hr />
<ul>
    <li><a href="http://www.htaccesselite.com/addtype-to-run-htm-as-php-vt7.html">AddType to run .htm as .php</a></li>
    <li><a href="http://www.htaccesselite.com/apache-mod-rewrite-technical-details-vt95.html">Apache mod_rewrite Technical Details</a></li>
    <li><a href="http://www.htaccesselite.com/azdg-script-shorten-url-with-mod-rewrite-vt57.html">azdg script - shorten url with mod rewrite</a></li>
    <li><a href="http://www.htaccesselite.com/basic-authentication-example-vt17.html">Basic authentication example</a></li>
    <li><a href="http://www.htaccesselite.com/block-everyone-except-1-ip-address-vt43.html">Block everyone except 1 IP Address</a></li>
    <li><a href="http://www.htaccesselite.com/cache-control-http-headers-vt65.html">Cache-Control HTTP Headers</a></li>
    <li><a href="http://www.htaccesselite.com/caching-and-optimization-vf1.html">View Forum - Caching and Optimization</a></li>
    <li><a href="http://www.htaccesselite.com/caching-using-header-vt2.html">Caching using header</a></li>
    <li><a href="http://www.htaccesselite.com/caching-using-mod-expires-with-expires-vt5.html">Caching Using mod_expires with expires</a></li>
    <li><a href="http://www.htaccesselite.com/cname-to-a-diffrent-folder-using-the-htaccess-vt76.html">cname to a diffrent folder using the htaccess</a></li>
    <li><a href="http://www.htaccesselite.com/commonly-used-htaccess-code-examples-vt119.html">Commonly Used htaccess Code examples</a></li>
    <li><a href="http://www.htaccesselite.com/create-hyperlinks-to-switch-between-http-and-https-vt60.html">Create hyperlinks to switch between HTTP and HTTPS</a></li>
    <li><a href="http://www.htaccesselite.com/creating-etag-headers-in-php-vt112.html">Creating ETag headers in php</a></li>
    <li><a href="http://www.htaccesselite.com/creating-seo-friendly-url-redirector-vt53.html">Creating SEO Friendly URL redirector</a></li>
    <li><a href="http://www.htaccesselite.com/debugging-php-vt26.html">Debugging PHP</a></li>
    <li><a href="http://www.htaccesselite.com/deny-a-block-of-ip-addresses-vt41.html">Deny a Block of IP Addresses</a></li>
    <li><a href="http://www.htaccesselite.com/deny-a-user-based-on-their-ip-address-vt40.html">Deny A User based on their IP address</a></li>
    <li><a href="http://www.htaccesselite.com/deny-access-to-a-folder-based-on-the-time-vt44.html">Deny access to a folder based on the Time</a></li>
    <li><a href="http://www.htaccesselite.com/deny-based-on-domain-name-vt42.html">Deny based on domain name</a></li>
    <li><a href="http://www.htaccesselite.com/difference-between-php-cgi-and-php-as-an-apache-module-vt106.html">Difference between PHP-CGI and PHP as an Apache module</a></li>
    <li><a href="http://www.htaccesselite.com/directoryindex-can-point-to-external-page-also-vt13.html">DirectoryIndex can point to external page also</a></li>
    <li><a href="http://www.htaccesselite.com/disable-directory-listings-vt39.html">Disable Directory Listings</a></li>
    <li><a href="http://www.htaccesselite.com/does-htaccess-go-in-root-or-htdocs-vt32.html">Does .htaccess go in root or htdocs?</a></li>
    <li><a href="http://www.htaccesselite.com/dont-cache-page-vt113.html">Dont-cache Page</a></li>
    <li><a href="http://www.htaccesselite.com/dynamic-mirror-vt98.html">Dynamic Mirror</a></li>
    <li><a href="http://www.htaccesselite.com/environment-variables-in-apache-vt100.html">Environment Variables in Apache</a></li>
    <li><a href="http://www.htaccesselite.com/errordocument-example-vt11.html">ErrorDocument Example</a></li>
    <li><a href="http://www.htaccesselite.com/etags-vt68.html">Etags</a></li>
    <li><a href="http://www.htaccesselite.com/force-files-to-download-not-be-displayed-in-browser-vt47.html">Force Files to download, not be displayed in browser</a></li>
    <li><a href="http://www.htaccesselite.com/force-https-and-no-double-login-vt30.html">FORCE HTTPS AND NO DOUBLE LOGIN</a></li>
    <li><a href="http://www.htaccesselite.com/from-old-to-new-extern-vt93.html">From Old to New (extern)</a></li>
    <li><a href="http://www.htaccesselite.com/from-static-to-dynamic-vt94.html">From Static to Dynamic</a></li>
    <li><a href="http://www.htaccesselite.com/google-cheat-sheet-vt80.html">Google Cheat Sheet</a></li>
    <li><a href="http://www.htaccesselite.com/google-webmasters-blog-vt78.html">Google Webmasters Blog</a></li>
    <li><a href="http://www.htaccesselite.com/here-are-a-few-examples-of-some-redirects-vt45.html">Here are a few examples of some redirects:</a></li>
    <li><a href="http://www.htaccesselite.com/howto-debug-headers-vt28.html">HowTo Debug Headers</a></li>
    <li><a href="http://www.htaccesselite.com/htaccess-files-useful-tips-and-tricks-vt103.html">HTACCESS files useful tips and tricks</a></li>
    <li><a href="http://www.htaccesselite.com/htaccess-to-secure-a-public-directory-vt24.html">Htaccess to Secure a Public Directory</a></li>
    <li><a href="http://www.htaccesselite.com/i-want-to-create-a-virtual-hosting-situation-vt74.html">I want to create a &#39;virtual hosting&#39; situation</a></li>
    <li><a href="http://www.htaccesselite.com/inside-google-sitemaps-improving-your-site-s-indexing-and-r-vt79.html">Inside Google Sitemaps: Improving your site&#39;s indexing and r</a></li>
    <li><a href="http://www.htaccesselite.com/limit-the-number-of-concurrent-visitors-to-your-website-vt38.html">Limit the Number of Concurrent Visitors to your Website</a></li>
    <li><a href="http://www.htaccesselite.com/load-balancing-vt99.html">Load Balancing</a></li>
    <li><a href="http://www.htaccesselite.com/main-vf13.html">View Forum - Main</a></li>
    <li><a href="http://www.htaccesselite.com/misc-notes-about-security-401-etc-vt55.html">Misc Notes about Security/401/etc</a></li>
    <li><a href="http://www.htaccesselite.com/missing-trailing-slash-code-vt23.html">Missing Trailing Slash Code</a></li>
    <li><a href="http://www.htaccesselite.com/mod-rewrite-efficiency-question-vt27.html">mod_rewrite Efficiency Question</a></li>
    <li><a href="http://www.htaccesselite.com/mod-rewrite-flags-vt101.html">Mod_Rewrite Flags</a></li>
    <li><a href="http://www.htaccesselite.com/more-on-php5-fcgi-setup-vt108.html">More on php5.fcgi setup</a></li>
    <li><a href="http://www.htaccesselite.com/most-searched-for-words-in-phpbb-vt109.html">Most searched for words in phpbb</a></li>
    <li><a href="http://www.htaccesselite.com/move-homedirs-to-different-webserverdescription-vt86.html">Move Homedirs to Different WebserverDescription:</a></li>
    <li><a href="http://www.htaccesselite.com/moved-documentroot-vt85.html">Moved DocumentRoot</a></li>
    <li><a href="http://www.htaccesselite.com/multiple-custom-php-ini-vt25.html">Multiple Custom PHP.ini</a></li>
    <li><a href="http://www.htaccesselite.com/multple-domains-using-htaccess-vt72.html">Multple domains using htaccess</a></li>
    <li><a href="http://www.htaccesselite.com/newbie-htaccess-tutorial-vt105.html">Newbie htaccess Tutorial</a></li>
    <li><a href="http://www.htaccesselite.com/on-page-load-vt110.html">On Page Load</a></li>
    <li><a href="http://www.htaccesselite.com/optimizing-phpbb-for-seo-vt118.html">Optimizing PHPBB for SEO</a></li>
    <li><a href="http://www.htaccesselite.com/order-allow-deny-vt54.html">Order, Allow, Deny</a></li>
    <li><a href="http://www.htaccesselite.com/password-protection-not-working-right-vt31.html">Password Protection not working right</a></li>
    <li><a href="http://www.htaccesselite.com/permanently-renaming-a-file-or-directory-vt51.html">Permanently renaming a file or directory</a></li>
    <li><a href="http://www.htaccesselite.com/php-cgi-vs-mod-php-vt58.html">php-cgi vs mod_php</a></li>
    <li><a href="http://www.htaccesselite.com/php-security-vt107.html">PHP Security</a></li>
    <li><a href="http://www.htaccesselite.com/php-session-id-use-for-seo-vt114.html">PHP Session ID use for SEO</a></li>
    <li><a href="http://www.htaccesselite.com/prevent-image-hotlinking-vt48.html">Prevent Image HotLinking</a></li>
    <li><a href="http://www.htaccesselite.com/problem-with-cms-stats-vt70.html">Problem with CMS/Stats</a></li>
    <li><a href="http://www.htaccesselite.com/processing-all-gif-images-through-a-cgi-script-vt59.html">Processing all GIF images through a CGI script</a></li>
    <li><a href="http://www.htaccesselite.com/protect-an-entire-directory-vt36.html">Protect an entire directory</a></li>
    <li><a href="http://www.htaccesselite.com/protect-multiple-specific-files-vt18.html">Protect multiple specific files</a></li>
    <li><a href="http://www.htaccesselite.com/protect-single-file-vt37.html">Protect single File</a></li>
    <li><a href="http://www.htaccesselite.com/protect-your-htaccess-file-vt46.html">Protect your htaccess file</a></li>
    <li><a href="http://www.htaccesselite.com/quoting-special-characters-vt102.html">Quoting Special Characters</a></li>
    <li><a href="http://www.htaccesselite.com/re-direct-any-requests-that-are-not-files-or-dirs-vt52.html">re-direct any requests that are not files or dirs</a></li>
    <li><a href="http://www.htaccesselite.com/redirect-contact-to-contact-php-vt33.html">Redirect /contact/ to /contact.php</a></li>
    <li><a href="http://www.htaccesselite.com/redirect-failing-urls-to-other-webserver-vt97.html">Redirect Failing URLs To Other Webserver</a></li>
    <li><a href="http://www.htaccesselite.com/redirecting-all-or-part-of-a-server-to-ssl-vt61.html">Redirecting All or Part of a Server to SSL</a></li>
    <li><a href="http://www.htaccesselite.com/redirecting-anchors-vt90.html">Redirecting Anchors</a></li>
    <li><a href="http://www.htaccesselite.com/redirectmatch-redirectpermanent-redirecttemp-vt62.html">RedirectMatch RedirectPermanent RedirectTemp</a></li>
    <li><a href="http://www.htaccesselite.com/regular-expressions-in-dreamweaver-vt111.html">Regular Expressions in Dreamweaver</a></li>
    <li><a href="http://www.htaccesselite.com/rel-link-types-vt69.html">rel Link types</a></li>
    <li><a href="http://www.htaccesselite.com/require-ssl-before-asking-for-htaccess-password-vt12.html">Require SSL before asking for htaccess password!</a></li>
    <li><a href="http://www.htaccesselite.com/requiring-the-www-vt6.html">Requiring the WWW</a></li>
    <li><a href="http://www.htaccesselite.com/rewrite-contact-to-cgi-bin-contact-php-vt56.html">Rewrite /contact/ to /cgi-bin/contact.php?</a></li>
    <li><a href="http://www.htaccesselite.com/rewrite-old-to-new-internally-vt92.html">Rewrite old to new internally</a></li>
    <li><a href="http://www.htaccesselite.com/rewrite-requests-for-s-file-spl-to-cgi-bin-file-php-vt20.html">Rewrite requests for /s/file.spl to /cgi-bin/file.php</a></li>
    <li><a href="http://www.htaccesselite.com/rewritecond-vt64.html">RewriteCond</a></li>
    <li><a href="http://www.htaccesselite.com/robots-meta-tag-and-googlebot-vt117.html">Robots meta tag and googlebot</a></li>
    <li><a href="http://www.htaccesselite.com/sample-htaccess-vt75.html">Sample htaccess</a></li>
    <li><a href="http://www.htaccesselite.com/search-for-files-vt87.html">Search for files [in more than one directory]</a></li>
    <li><a href="http://www.htaccesselite.com/security-vf5.html">View Forum - Security</a></li>
    <li><a href="http://www.htaccesselite.com/seo-friendly-urls-for-php-vt34.html">SEO Friendly URLs for PHP</a></li>
    <li><a href="http://www.htaccesselite.com/serve-virtual-hosts-vt96.html">serve virtual hosts</a></li>
    <li><a href="http://www.htaccesselite.com/set-environment-variables-according-to-url-vt88.html">Set Environment Variables According To URL</a></li>
    <li><a href="http://www.htaccesselite.com/setenv-passenv-unsetenv-vf8.html">View Forum - SetEnv, PassEnv, UnsetEnv</a></li>
    <li><a href="http://www.htaccesselite.com/setenv-to-set-the-server-administrator-email-vt16.html">SetEnv to set the server administrator email</a></li>
    <li><a href="http://www.htaccesselite.com/setenv-to-set-the-server-timezone-vt15.html">SetEnv to set the server timezone</a></li>
    <li><a href="http://www.htaccesselite.com/setenv-to-specify-cgi-apache-error-log-vt50.html">SetEnv to Specify CGI/Apache Error Log</a></li>
    <li><a href="http://www.htaccesselite.com/setting-charset-information-in-htaccess-vt81.html">Setting charset information in .htaccess</a></li>
    <li><a href="http://www.htaccesselite.com/shell-scripts-vf25.html">View Forum - Shell Scripts</a></li>
    <li><a href="http://www.htaccesselite.com/some-basic-defaults-vt21.html">Some Basic Defaults</a></li>
    <li><a href="http://www.htaccesselite.com/some-good-default-addtypes-for-favicon-ico-and-flash-vt19.html">Some good default AddTypes for favicon.ico and flash</a></li>
    <li><a href="http://www.htaccesselite.com/specify-a-custom-error-document-vt49.html">Specify A Custom Error Document</a></li>
    <li><a href="http://www.htaccesselite.com/sql-vf27.html">View Forum - SQL</a></li>
    <li><a href="http://www.htaccesselite.com/ssl-vf3.html">View Forum - SSL</a></li>
    <li><a href="http://www.htaccesselite.com/status-codes-vt63.html">Status Codes</a></li>
    <li><a href="http://www.htaccesselite.com/stop-hotlinking-and-bandwidth-theft-vt104.html">[How Do I] Stop Hotlinking and Bandwidth Theft?</a></li>
    <li><a href="http://www.htaccesselite.com/switch-php-between-running-as-a-cgi-and-an-apache-module-vt10.html">Switch PHP between running as a CGI and an Apache module</a></li>
    <li><a href="http://www.htaccesselite.com/the-7-link-types-vt83.html">The 7 Link Types</a></li>
    <li><a href="http://www.htaccesselite.com/this-piece-of-code-returns-a-blank-gif-vt71.html">This piece of code returns a blank gif</a></li>
    <li><a href="http://www.htaccesselite.com/time-dependent-rewriting-vt91.html">Time-Dependent Rewriting</a></li>
    <li><a href="http://www.htaccesselite.com/use-htaccess-to-speed-up-your-site-discussion-vt67.html">Use htaccess to speed up your site discussion</a></li>
    <li><a href="http://www.htaccesselite.com/useing-redirectmatch-to-redirect-using-regexp-vt35.html">Useing RedirectMatch to redirect using regexp</a></li>
    <li><a href="http://www.htaccesselite.com/using-defaultcharset-and-defaultlanguage-to-eliminate-meta-vt22.html">Using defaultcharset and defaultlanguage to eliminate meta</a></li>
    <li><a href="http://www.htaccesselite.com/using-filesmatch-to-target-files-vt9.html">Using FilesMatch to target files</a></li>
    <li><a href="http://www.htaccesselite.com/using-htaccess-redirection-to-standardize-web-server-addres-vt73.html">Using .htaccess Redirection to Standardize Web Server Addres</a></li>
    <li><a href="http://www.htaccesselite.com/using-html-instead-of-php-vt82.html">Using .html instead of .php</a></li>
    <li><a href="http://www.htaccesselite.com/using-php-to-force-a-download-vt29.html">Using PHP to force a download?</a></li>
    <li><a href="http://www.htaccesselite.com/using-php-to-force-a-download-vt66.html">Using PHP to force a download</a></li>
    <li><a href="http://www.htaccesselite.com/using-setenv-to-instruct-php-to-use-custom-php-ini-vt14.html">Using SetEnv to instruct php to use custom php.ini</a></li>
    <li><a href="http://www.htaccesselite.com/virtual-user-hosts-vt89.html">Virtual User Hosts [using HTTP_HOST header]</a></li>
    <li><a href="http://www.htaccesselite.com/wikipedias-htaccess-page-vt77.html">Wikipedias Htaccess Page</a></li>
</ul><p><a href="http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html"></a><a href="http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html">Links to htaccess tutorials and articles</a> originally appeared on <cite>AskApache.com</cite> </p>]]></content:encoded>
			<wfw:commentRss>http://www.askapache.com/htaccess/best-htaccess-tutorials-and-articles.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

