\documentclass[letterpaper,english]{article}
\nonstopmode
\akai
\usepackage{linuxdoc-sgml}
\usepackage{qwertz}
\usepackage{url}
\usepackage[latin1]{inputenc}
\usepackage{t1enc}
\usepackage[english]{babel}
\usepackage{epsfig}
\usepackage{null}
\def\addbibtoc{
\addcontentsline{toc}{section}{\numberline{\mbox{}}\relax\bibname}
}%end-preamble
\setcounter{page}{1}
\title{The Linux Public Web Browser mini-HOWTO}
\author{Donald B. Marti Jr., {\ttfamily dmarti@best.com}}
\date{v0.3, 5 January 1998}
\abstract{Õâ·ÝÎÄ¼þµÄÄ¿µÄÊÇÈÃËùÓÐÈË¶¼¿ÉÒÔÀûÓÃ¸ÃÌ¨µçÄÔÁ¬ÉÏÍøÕ¾, µ«»áÏÞÖÆËûÃÇµÄÈ¨ÏÞÒÔ·ÀÖ¹ËûÃÇ°ÑµçÄÔµÄÉè¶¨ÅªµÃÂÒÆß°ËÔã.}


\begin{document}
\maketitle
\tableofcontents

\section{°æÈ¨ÉùÃ÷}

°æÈ¨ËùÓÐ 1997 Donald B. Marti Jr.
Õâ·ÝÎÄ¼þÔÚLinux ÎÄ¼þ¼Æ»­µÄ¹æ¡õÏÂÔÊÐí±»ÖØÖÆ.

Õâ·ÝËµÃ÷ÎÄ¼þÏÖÔÚÖ»°üº¬ÓÐ¹ØNetscape NavigatorµÄ×ÊÑ¶, µ«ÊÇÎÒ¼Æ»­ÔÚÎÒµÃ¡õµ½±ØÒªµÄ×ÊÁÏáá½«ÆäËûä¯ÀÀÆ÷µÄ×ÊÑ¶¼ÓÈë.Èç¹ûÄãÀûÓÃÕâ·ÝÎÄ¼þÔÚÆäËûµÄ
ä¯ÀÀÆ÷ÉÏ³¢ÊÔ³É¹¦, ÇëÈÃÎÒÖªµÀ.


\section{¼ò½é}

Õâ·ÝÎÄ¼þµÄÖ÷ÒªÄ¿µÄÊÇÈÃÈÎºÎÈË¶¼¿ÉÀûÓÃ¸ÃÌ¨µçÄÔÁ¬½ÓÍøÕ¾µ«ÊÇ»áÓÐÊÊµ±µÄ
ÏÞÖÆÈÃËûÃÇ²»»á°ÑÉè¶¨¸ãµÄÒ»ÍÅÔã.

ÕâÐ©Éè¶¨Ö÷Òª»á±»ÓÃÔÚÕ¹ÀÀÖÐ¹©ÃñÖÚÃâ·ÑÊ¹ÓÃµÄµçÄÔÉÏ, µ«Ò²ÐíÒ²¿ÉÒÔÓÃÔÚÈÎºÎ
Ò»Ì¨¹©´ó¼ÒÊ¹ÓÃ, µ«Äã²»Ïë´ýÔÚÅÔ±ß¿´ÖøËûµÄµçÄÔÉÏÃæ.

ÒÀÕÕ±¾ÎÄ¼þµÄËµÃ÷À´×ö, ²¢{\bfseries ²»}»áÈÃÄãµÄµçÄÔÎÞ¼á²»´Ý


\section{ÔÚÄã¿ªÊ¼Ö®Ç°...}


\subsection{ÄãÐèÒªÒ»¸öÍ¼ÐÎ½éÃæµÄä¯ÀÀÆ÷}

Õâ·ÝÎÄ¼þ¼Ù¶¨ÄãÒÑ¾­ÓÐÁËÒ»¸öÍ¼ÐÎ½éÃæµÄä¯ÀÀÆ÷ÔÚÏµÍ³ÉÏÃæÖ´ÐÐ, ÀýÈç
Netscape Navigator.
Äã±ØÐëÓÐÊ¹ÓÃÍ¼ÐÎ½éÃæä¯ÀÀÆ÷µÄÈ¨ÏÞ. Èç¹ûÄãÒª°ÑNetscape NavigatorÓÃ
ÔÚÉÌÒµÉÏ,Äã¿ÉÒÔÏòCaldera¹«Ë¾¹ºÂòÊ¹ÓÃÈ¨.


\subsection{Äã±ØÐë¿ÉÒÔÐÂÔöÒ»¸öÊ¹ÓÃÕßÕÊºÅ}

Èç¹ûÄãÃ»ÓÐ³ÉÎª{\bfseries root}µÄÈ¨Á¦, ÇëÒªÇóÏµÍ³¹ÜÀíÔ±ÐÂÔöÒ»¸ö
{\ttfamily guest} ÕÊºÅ, ²¢°Ñ{\ttfamily guest}µÄhomeÄ¿Â¼µÄËùÓÐÈ¨½»¸øÄã.
²¢Ìøµ½ ``ÐÂÔö»ò±à¼­ÒÔÏÂµÄµµ°¸'' Õâ¸ö²½Öè
(\ref{CreateEditHomeGuestFiles} {(ÔÚ/home/guestÖÐÐÂÔö»ò±à¼­ÒÔÏÂµÄµµ°¸)})
µ±Ëû»òÕßÊÇËýÍê³ÉÖ®áá.


\subsection{Èç¹ûÄãÒªµÄÊÇÒ»Ì¨Ã»ÓÐÍøÂ·Á¬Ïß, µ«ÒªÈÃ´óÖÚä¯ÀÀÄãËùÌá¹©µÄÍøÒ³ÄÚÈÝµÄµçÄÔ,
ÄãÐèÒª {\ttfamily httpd}}

Èç¹ûÄãÒªµÄÊÇÒ»Ì¨Ã»ÓÐÍøÂ·Á¬Ïß, µ«ÒªÈÃ´óÖÚä¯ÀÀÄãËùÌá¹©µÄÍøÒ³ÄÚÈÝµÄµçÄÔ,
Äã±ØÐëÓÐ {\ttfamily httpd} ÔÚÏµÍ³ÉÏÖ´ÐÐ, ÒÔ¼°ÄãËùÒªÌá¹©µÄÎÄ¼þ.
Èç¹ûÄãÒªÖªµÀÄãÏµÍ³µÄÇé¿ö, ÊäÈë:
\begin{tscreen}
\begin{verbatim}
lynx -dump http://localhost/
\end{verbatim}
\end{tscreen}

ÄãÓ¦¸Ã»á¿´µ½ÄãÕâÌ¨µçÄÔÉÏÃæËùÉè¶¨µÄhtmlÎÄ¼þ


\section{ÐÂÔö guest ÕÊºÅ\label{AddGuestAccount}}

ÒÔ {\bfseries root} Ö´ÐÐ {\ttfamily adduser} À´ÐÂÔöÒ»¸ö½Ð×ö{\ttfamily guest}µÄÕÊºÅ.
È»ááÊäÈë
\begin{tscreen}
\begin{verbatim}
passwd guest
\end{verbatim}
\end{tscreen}

À´Éè¶¨{\ttfamily guest}µÄÃÜÂë.
×îºÃ½«Õâ¸öÃÜÂëÉèµÄ¼òµ¥ºÃ¼Ç, ÀýÈç``{\ttfamily guest}''.
Äã½«»á¸æËß´ó¼ÒÕâ¸öÃÜÂë.
ËùÒÔ±ð°ÑËûÉè¶¨µÄºÍÄã×Ô¼ºµÄÃÜÂëÒ»Ñù.

È»áá°Ñ {\ttfamily guest}µÄhomeÄ¿Â¼µÄËùÓÐÈ¨×ªÒÆµ½ÄãÉíÉÏ.
ÊäÈë
\begin{tscreen}
\begin{verbatim}
chown me.mygroup /home/guest
\end{verbatim}
\end{tscreen}

½«``{\ttfamily me}''Õâ¸öµØ·½¸Ä³ÉÄãµÄÊ¹ÓÃÕßÃû³Æ, ¼°°Ñ``{\ttfamily mygroup}''Õâ±ß
¸Ä³ÉÄãµÄÈº×éÃû³Æ.
(ÔÚRed Hat LinuxÉÏ, Ò²ÊÇÒ»ÑùµÄ×÷·¨, ¾ÍËãÃ¿¸öÊ¹ÓÃÕß¶¼ÓÐËû×Ô¼ºµÄÈº×é.)

ÄãÏÖÔÚ¿ÉÒÔÀë¿ªÏµÍ³, ²¢½«ÒÔÏÂµÄ²½ÖèÒÔÄã×Ô¼ºµÄÕÊºÅÍê³É, ¶ø²»ÊÇ{\bfseries root}.¡õ

\section{ÔÚ {\ttfamily /home/guest}ÖÐÐÂÔö»ò±à¼­ÒÔÏÂµÄµµ°¸\label{CreateEditHomeGuestFiles}}


\subsection{µµ°¸Ãû³Æ: {\ttfamily .bash\_login}}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
exec startx
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

Õâ±íÊ¾µ±{\ttfamily guest} µÇÈëÏµÍ³,
shell½«»á×Ô¶¯Æô¶¯X Window.


\subsection{µµ°¸Ãû³Æ: {\ttfamily .Xclients}}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
netscape
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

Õâ±íÊ¾µ±X WindowÆô¶¯,  {\ttfamily guest}Ö»»áÓÐÒ»¸öä¯ÀÀÆ÷µÄ³ÌÊ½, ¶øÃ»ÓÐ
window manager. Èç¹ûÄã¸üÏ²»¶ÆäËûµÄä¯ÀÀÆ÷, Çë°ÑËû»»½øÀ´.¡õ
{\ttfamily .Xclients}Õâ¸öµµ°¸±ØÐëÄÜ±» {\ttfamily guest} Ö´ÐÐ.
ÊäÈë:
\begin{tscreen}
\begin{verbatim}
chmod 755 /home/guest/.Xclients
\end{verbatim}
\end{tscreen}

À´°ìµ½Ëü.¡õ

\subsection{µµ°¸Ãû³Æ: {\ttfamily .xsession}}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
#!/bin/sh
netscape
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

Èç¹ûÄãÒÔ {\ttfamily xdm}(1) À´ÈÃÈËÃÇµÇÈëÄãµÄÏµÍ³, 
Õâ¸öµµ°¸¿ÉÒÔÈÃguestÔÚÕý³£µÇÏµÍ³ááÖ´ÐÐä¯ÀÀÆ÷
{\ttfamily .xsession} Õâ¸öµµ°¸Ò²±ØÐëÄÜ±» {\ttfamily guest} Ö´ÐÐ.
ÊäÈë
\begin{tscreen}
\begin{verbatim}
chmod 755 /home/guest/.xsession
\end{verbatim}
\end{tscreen}

À´°ìµ½Ëü.


\subsection{µµ°¸Ãû³Æ: {\ttfamily .Xdefaults}}

\begin{tscreen}
\par
\addvspace{\medskipamount}
\nopagebreak\hrule
\begin{verbatim}
! È¡Ïû drag-to-select.
*hysteresis:                            3000
! ÈÃ¿´¹ýµÄºÍÃ»¿´¹ýµÄÁ¬½áÏÔÊ¾ÏàÍ¬µÄÑÕÉ«
*linkForeground:                        #0000EE
*vlinkForeground:                       #0000EE

Netscape.Navigator.geometry: =NETSCAPE_GEOMETRY

! È¡ÏûÄ³Ð©¼üÅÌÖ¸Áî.
*globalTranslations:

! »¬Êó¿ØÖÆ: ÈÃ»¬ÊóÉÏËùÓÐµÄ°´¼ü×öÍ¬ÑùµÄ¹¦ÄÜ.
*drawingArea.translations:              #replace                        \
<Btn1Down>:                     ArmLink()                       \n\
<Btn2Down>:                     ArmLink()                       \n\
<Btn3Down>:                     ArmLink()                       \n\
~Shift<Btn1Up>:                 ActivateLink()                  \
                                DisarmLink()                    \n\
~Shift<Btn2Up>:                 ActivateLink()                  \
                                DisarmLink()                    \n\
~Shift<Btn3Up>:                 ActivateLink()                  \
                                DisarmLink()                    \n\
Shift<Btn1Up>:                  ActivateLink()                  \
                                DisarmLink()                    \n\
Shift<Btn2Up>:                  ActivateLink()                  \
                                DisarmLink()                    \n\
Shift<Btn3Up>:                  ActivateLink()                  \
                                DisarmLink()                    \n\
<Btn1Motion>:                   DisarmLinkIfMoved()             \n\
<Btn2Motion>:                   DisarmLinkIfMoved()             \n\
<Btn3Motion>:                   DisarmLinkIfMoved()             \n\
<Motion>:                       DescribeLink()                  \n\
\end{verbatim} 
\nopagebreak\hrule 
\addvspace{\medskipamount}
\end{tscreen}

Õâ¸öµµ°¸È¡ÏûÉÁË¸µÄ±êÇ©, drag-to-select, 
ÒÔ¼°Ò»Ð©¼üÅÌÖ¸Áî.
Õâµµ°¸Ò²ÈÃÃ¿Ò»¸ö»¬ÊóµÄ°´¼ü×öÏàÍ¬µÄ¹¦ÄÜ,
Ò²°Ñ¹¦ÄÜ±íÒþ²ØÆðÀ´, °Ñ°Ý·Ã¹ýºÍÃ»°Ý·Ã¹ýµÄÁ¬½áÏÔÊ¾ÏàÍ¬µÄÑÕÉ«,
ÒÔÈÃÃ¿¸ö°Ý·ÃÕß¶¼¿ÉÒÔ¿´µ½Æ¯ÁÁµÄÀ¶É«Á¬½á,
¶ø²»ÊÇÆäËûÈËµãÈ¡¹ýµÄ×ÏÉ«.

ÄãÒª°ÑÕâµµ°¸ÀïÃæµÄ {\ttfamily NETSCAPE\_GEOMETRY} »»³ÉÏñÕâÑù:
{\ttfamily XxY+0-0},

{\ttfamily X} ´ú±íÄãÓ©Ä»µÄË®Æ½½âÎö¶È, ¶ø{\ttfamily Y}´ú±íÓ©Ä»µÄ´¹Ö±½âÎö¶È
¼ÓÉÏ {\ttfamily  32}.
Õâ»áÈÃNetscapeµÄ¹¦ÄÜ±íÅÜµ½Ó©Ä»Ö®Íâ, ¶ø²»»áÈÃÊ¹ÓÃÕßÂÒÀ´.
¾ÙÀýÀ´Ëµ, Èç¹ûÄãµÄÓ©Ä»½âÎö¶ÈÊÇ800x600,
geometryÓ¦Éè¶¨³É {\ttfamily 800x632+0-0}.


\section{½¨Á¢ {\ttfamily guest} µÄ {\ttfamily .netscape} Ä¿Â¼}

ÊäÈë:
\begin{tscreen}
\begin{verbatim}
mkdir /home/guest/.netscape
chmod 777 /home/guest/.netscape
\end{verbatim}
\end{tscreen}


½¨Á¢ {\ttfamily guest} µÄ {\ttfamily .netscape} Ä¿Â¼, ²¢ÈÃËü¿ÉÒÔ±»Ð´Èë




\section{ÊÔÊÔ¿´!}

ÀëÏß, È»ááÒÔ{\ttfamily guest}ÖØÐÂµÇÈë.


\section{¸Ä±äÉè¶¨}

ÒòÎªÄã²»ÄÜÊ¹ÓÃ{\ttfamily guest}À´²Ù×÷Ñ¡µ¥,
ËùÒÔµ±ÄãÐèÒª¸Ä±äguestµÄÉè¶¨Ê±,Äã±ØÐëÊÖ¶¯±à¼­, 
»òÕßÊÇ±à¼­Äã×Ô¼ºµÄÉè¶¨µµ, °ÑËû±à³ÉÄãËùÏëÒªµÄ, È»ááÔÙ¸´ÖÆÒ»·Ý¸ø{\ttfamily guest}

\end{document}
