���й����뻥���30����֮ʱ����һ̨1994���Linux�����������

��ߣ�� Dr.Quest
��ţ�700820663
�����ڣ�2024-06-03 13:30:58
�޸��ڣ�2024-08-19 10:15:13
--------------------

����紴ҵ��Դ���ģ�NSRC���ṩ������ṩ����ݿ⣨Connectivity Provide
r Database���У������1994��6��1�յġ��й�����������̳�򱨡���CINET-
L�� (Link: https://nsrc.org/db/lookup/report.php?id=890202394613:49742
6773&fromISO=CN) �������п�Ժ���������ʦ׫д�ġ�IHEP ��緢չ�ع���
չ� - ��ԡ���Review and Prospect of IHEP Network Development - An ln
troduction��һ���н�����й��������ͨʱ��ṩ�������

In May, 1994, IHEP finally gained full access to the Internet, so that
IHEP users can transfer files and connect to any of the Internet node
s instead of just sending E-mail messages, and all the outside users c
an ftp and telnet to IHEP directly from their internet machines.Our pe
rmanent Internet email address is [email protected] (Link: ma
ilto:[email protected]) :IHEP Computing Center has set up WWW an
d Gopher server.1994 �� 5 �£�IHEP ����ȫ����뻥����������IHEP �û�
�Ϳ��Դ����ļ������ӵ���������κνڵ㣬���������Ƿ��͵����ʼ��������
���û�������ֱ�Ӵ���ǵĻ���������ͨ�� ftp �� telnet ���ӵ� IHEP����
������ԵĻ���������ʼ���ַ������[email protected] (Link: mailt
o:[email protected]) IHEP �������Ľ����� WWW �� Gopher �������
�����ǾͰ�WWW��Gopher�����������ɣ�

WWW�������CERN����NCSA��

��������Ҫ�ش�������ǣ�1994���������п���ʹ�õ�Web server����һ�
���ΪLinux��׼Web���ջ��LAMP�е�ApacheҪ��1995��ŷ������ڡ��й���
һ��WWW�վ����� (Link: http://mp.ihep.ac.cn/article/pdf/preview/8501
) ���У�������������ʦ������1994��4����WWW�ĵ����CERN�Ӵ�Web���
�������ع��ڵľ��������Dz����Ʋ��������п���ʹ�õ���CERN������CERN
HTTPd�����ڰ汾���WWW Daemon����

���ܿ����ƶϾͱ���ҡ�ˣ���Ϊ�������ѧԺ��1994�������������һ��
��ά��û����顷��First World-Wide Web User Survey�� (Link: https://si
tes.cc.gatech.edu/gvu/user_surveys/papers/survey_1_paper.html) ������
�������ʾ��ʱ���е�Web�������NCSA HTTPd��ռ��71.88%���ڶ����Plexu
s��һ����Perl��д��Web�������ռ12.73%����CERN HTTPd����GN (Link: http
s://man.freebsd.org/cgi/man.cgi?query=gn&manpath=Red+Hat+4.2) ��һ��ͬ
ʱ֧��Gopher��WWW�ķ����������7.43%��ʹ�����

Table 4: Results from the HTTP Survey
---------------------------------------------------------------------
Question 1.                   Yes         No                    Total

Operate HTTP Server / %       378 /       103 /                 481

                             78.59       21.41

Question 2.                   GN or Cern  NSCA   Plexus  Other  Total

If Yes, Which Server / %      28 /        271 /  48 /    30 /   377

                             7.43        71.88  12.73   7.96

��˴ӵ�ʱ�������������������������ҳ�������Ӧ�����ģ�NCSA����NC
SA HTTPdͬ����ܱ������ڸ�����ķ�����ϡ�

������û�����֤���أ���Github�ϵ�һ�ݡ�Chinese-HOWTO���ļ��ϣ����ҵ�
�˸�������ʹ�ù����һ�������http://csun01.ihep.ac.cn (Link: http:/
/csun01.ihep.ac.cn) ������������������˵�ʱ��һЩWWW��������CER
NĿ¼��Ȼ��û���鿴�����ܿ�����CERN HTTPd��ص��ļ���

Linux-HOWTOs/Chinese-HOWTO at master �� kalamangga-net/Linux-HOWTOs (Li
nk: https://github.com/kalamangga-net/Linux-HOWTOs/blob/master/Chinese
-HOWTO)

(Image: https://picx.zhimg.com/v2-b8af829962088abe904cde471f446197_720
w.jpg?source=d16d100b)
�����ջ�������������ѵľ�����������Ҫ��

�ӻ�����ά���ʷ�ĽǶȽ���CERN��NCSA��HTTPd����ͬ���Ҫ��CERN HTTPd��
���Tim Berners-Lee���Ա�д��WWW Daemon���ǵ�һ����ά������������N
CSA HTTPd����Apache��ֱ��ǰ����ռ����ά�������г��ݶ��һ�ı����
��20��ʱ�䡣

���벢����CERN HTTPd

��������ϵ�е���һ�������Ѿ���װ��SoftLanding Linux System��SLS����
������TCP/IP��磬�����һ�����Ǵ����IJ��ͨ��Telnet���У������ѡ��
�Լ�ϰ�ߵ��ն˷��������ҵIJο�������Windows 10�ϵ�Putty��

� Dr.Quest�����й����뻥���30����֮ʱ����һ̨1994���Linux�������
�ϣ� (Link: https://zhuanlan.zhihu.com/p/700400046) ΪSLS��װLinux�ں�
Դ��

����CERN HTTPd֮ǰ��������ҪΪ���װLinux�ں�Դ�룬��Ȼ�ͻ���Ϊ�޷��
��ijЩLinuxͷ�ļ���ʧ�ܡ�

��SLS��Ĭ�ϰ�װ�У�/usr/include/linux��һ��ָ��/usr/src/linux/include/
linux/������

p:softland:/usr/include$ ls -l linux
lrwxrwxrwx   1 root     root           26 May 30  1924 linux -> ../src
/linux/include/linux/
����û�а�װLinuxԴ�룬/usr/src/linuxĿ¼Ҳ�Ͳ����֣���˾ͻ����
���������İ취�������ֹ���װSLS��װ������ṩ��Linux�ں�Դ�롣

SLS��װ���У����Ϊ��s1���������а����ġ�lxsrc.tgz������Linux�ں�Դ����
����SLS�ṩһ��û��������İ���װ��sysinstall�������ǿ��������lxs
rc.tgz��װ��ϵͳ�У������õ���Ŀ¼�ṹ�����⡣

#���صڶ���Ӳ�̣���װ�ļ����λ�ã����ϼ�����/mnt
mount -t msdos /dev/hdb1 /mnt
#���밲װ��s1Ŀ¼
cd /mnt/install/s1/
#��װ�ں�Դ��
sysinstall -install lxsrc.tgz
����CERN HTTPd

��W3C�վ�ϣ���������ɰ汾CERN HTTPd��Դ�룺Index of /Daemon/old/Di
st (Link: https://www.w3.org/Daemon/old/Dist/) �����Լ�ʹ�����������
��1994��3�µ�CERN HTTPd 2.16���ʾ�������汾�У���CERN HTTPdһͬ����
�Ļ�������WWW Line Mode Browser������2.17֮��İ汾�У�����Ҫ�ֹ���W
WW/All/Implementation/Makefile��ȡ�ָ���ע�͵��LineMode Browser���ֲ�
����ʹ��LineMode Browser��

����ʹ��FTP�ϴ������������һ�����ᵽ��DOS��ʽ�ĵڶ���Ӳ�����תվ����
cern_httpd_2.16beta.tar.Z���Ƶ�SLSϵͳ�У����Լ�һ��ʹ��/rootĿ¼����
��tar zxvf����ѹ���ͻ�õ�WWWĿ¼���������£�

All/           Copyright.txt  Library/       Makefile
BUILD*         Daemon/        LineMode/      README.txt
���е�BUILD�ű�����CERN HTTPd�ı���ű��ˣ���������ֱ�������������
ʾ�Ҳ����ļ���ԭ���Ǹýű���csh�ű�����SLS�ṩ������֮���ݵ�tcsh������
��Ҫ����һ�����ӣ���/bin/csh����tcsh�����⣬BUILD�ű����ڲ���ʶ��Lin
uxϵͳ����Ҫ��������WWW_MACHΪ��unix��

#����csh���
ln -s /bin/tcsh /bin/csh
#���û�����
export WWW_MACH=unix
֮��BUILD�ű��Ϳ����������ˣ�֮�����ǽ���WWW/Daemon/unix���ͻῴ����
����Щ�ļ�

cgiparse -> cgiparse_2.16beta*
cgiparse_2.16beta*
htadm -> htadm_2.16beta*
htadm_2.16beta*
htimage -> htimage_2.16beta*
htimage_2.16beta*
httpd -> httpd_2.16beta*
httpd_2.16beta*
����httpd����HTTP���������ļ��ˣ����������������һ���򵥵�HTTPd

httpd -v -dy /root/ -p 80
�����v����dž��£�verbose��ģʽ�������ܿ�������ϸ����Ϣ������dy��������
�����Ŀ¼�ṹ����p�������ָ���˿ڣ���ϸ������в����������CERN Server
User Guide (Link: https://www.w3.org/Daemon/old/UserGuide_2.16/Guide.
html)  �е� Administration �� Command line options���ڵ������������
http://<SLS��IP��ַ>���Ϳ��Բ鿴��/rootĿ¼�е����ݡ�

��ҳ�������ļ�

���ǿ��Բ���CERN�ֲ��е���Ӵ���һ����򵥵������ļ� Examples of CERN
httpd configuration (rule) files (Link: https://www.w3.org/Daemon/old/
UserGuide_2.16/RuleExamples.html)

Pass    /          file:/root/myhttphome/welcome.html
Pass    /*         file:/root/myhttphome/*
Fail    *
�����������ǰ���ҳ����Ϊ/root/myhttphome/welcome.html���������
��/root/myhttphome/�µ�����ļ���������welcome.html����������дһЩ
���ݣ���ʱ��HTML��ʽ�Ƚ���ɢ��<html>�ļ�ͷ�����DZ�Ҫ��

<title>This is my first page</title>
<h1>Welcome to the CERN HTTPd on SLS</H1>
<p>This is a real 1994 style web server!</p>
����������á�-r�������CERN HTTPd�������������ļ�

httpd -r httpd.conf -v -p 80
Ȼ�����Ϳ����Խ����HTTP��������Ƶķ�ʽ�ṩ�ҳ��

(Image: https://picx.zhimg.com/v2-0dc024dca1332f728e4ce809d4e3a45e_720
w.jpg?source=d16d100b)
����Line Mode Browser

����ά����֮����ͼ�λ������ֻ��NeXTSTEPƽ̨�Ͽ��ã�����һ����ƽ̨
�����㷺ʹ�õ��������Line Mode Browser����ģʽ����������˼�壬�
�ǹ�������ʾ�ַ����ı��ն�׼���ġ�2013�꣬CERN���Ŷ����ҳ�ﻹԭ��Line
Mode Browser�IJ������飺Line Mode Browser 2013 (Link: https://line-mo
de.cern.ch/) �������ڣ�������һ�������Line Mode Browser������Ҳ��һ
̨���նˣ��Ǿ��ٺò����ˣ�

[���ն�]ʵ����Ӣ������ն�NT1100�����ݮ��_������_bilibili (Link: ht
tps://www.bilibili.com/video/BV1hK4y1t7qb/) ����õ�Line Mode Browser
��WWW/LineMode/unixĿ¼����ǿ��԰���Ŀ�ִ���ļ������Ӷ����Ƶ�usr
/bin/�������ó����û�Ȩ��Ҳ����ʹ�����

cd /root/WWW/LineMode/unix
cp www_2.12 /usr/bin/
cp www /usr/bin/
Ȼ�����ǿ������ŷ������±����ϵ�HTTPd��ʹ�� www http://127.0.0.1 ���
����

(Image: https://picx.zhimg.com/v2-c131807e7fe55be721953ee04902f1b8_720
w.jpg?source=d16d100b)
�������ǸղŴ������ҳû�г����ӣ������ʾ��������̾ͻ��˳��ˣ���ΪLi
ne Mode Browserֻ��֧��HTTP/1.0��Ŀǰ�ڻ�����ϵĴ�������������Ҫ
��HTTP/1.1������޷���������վ���������õİ취�����ִ������ϴһ
̨HTTP/0.9�������GitHub - remy/old-servers: Replicate old HTTP server
functionality (Link: https://github.com/remy/old-servers)

֮��Ϳ����� www <����old-server�Ļ����ַ> ͨ��LineMode Browser�����


(Image: https://picx.zhimg.com/v2-9a275e6b8f49612a3676f71c5dca51c1_720
w.jpg?source=d16d100b)
��������ϵ�һ���ҳ�����Unix�豸�ϱ����ʵ���ӱ��벢����NCSA HTTPd

NCSA HTTPd�����ڰ汾Ŀǰ�Ѿ���̫�����ҵ������˵�����Slackware 2.1��Դ
����Ŀ¼�У����ǿ����ҵ�NCSA HTTPd 1.3��Դ���룬ʱ��Ϊ1994��5��7�գ���
���ڸ������ͨWWW�����ʱ�伸�����ڣ�������Ӱ���䷴Ӧ��ʱWWW����ķ�չ
��

Index of /slackware/slackware-2.1/source/contrib/httpd (Link: https://
mirrors.slackware.com/slackware/slackware-2.1/source/contrib/httpd/)

���ǽ�httpd_source.tar.gz�ϴ���SLS����ѹ���õ�httpd_1.3Ŀ¼��������
���

README    cgi-bin/  cgi-src/  conf/     icons/    logs/     src/
support/
����������йص�ֻ��src�ļ��У�������Ҫ��΢�޸�Make�ļ�������ܹ���Lin
ux�±���

#����src���
cd httpd_1.3/src
#�޸�Makefile
vi Makefile
�ҵ�����Ĵ��룬���ǿ��������һϵ����Բ�ͬϵͳ�ı����־��Ĭ�ϵ�ƽ̨
��SunOS 4������Ҫ�ij�Linux����AUX_CFLAGS= -DSUNOS4һ��ǰ����ϡ�#������
ʧЧ��Ȼ���AUX_CFLAGS= -DLINUXһ��ǰ���#ɾȥ����

# For SunOS 4
AUX_CFLAGS= -DSUNOS4
# For Solaris 2. NOTE: Lots of problems have been identified with comp
iling
# httpd under Solaris. Use with caution. If you see aberrant behavior
with
# httpd under Solaris 2, please mail us.
#AUX_CFLAGS= -DSOLARIS2
#EXTRA_LIBS= -lsocket -lnsl
# For SGI IRIX. Use the EXTRA_LIBS line if you're using NIS and want
# user-supported directories
#AUX_CFLAGS= -DIRIX
#EXTRA_LIBS= -lsun
# For HP-UX
#AUX_CFLAGS= -DHPUX
# For AIX
#AUX_CFLAGS= -DAIX -U__STR__
# For Ultrix
#AUX_CFLAGS= -DULTRIX
# For DEC OSF/1
#AUX_CFLAGS= -DOSF1
# For NeXT
#AUX_CFLAGS= -DNEXT
# For Sequent
#AUX_CFLAGS= -DSEQUENT
# For Linux -m486 ONLY IF YOU HAVE 486 BINARY SUPPORT IN KERNEL
#AUX_CFLAGS= -DLINUX
֮��ʹ��make��ʼ���룬��ɺ�ͻ�õ�httpd��ִ���ļ���Ȼ����httpd
_1.3/supportĿ¼����make���뼸��֧���ļ������������

cd ../support
make
����NCSA HTTPd���Ŀ¼

NCSA HTTPd��Ĭ�Ϲ��Ŀ¼��/usr/local/etc/httpd������SLS��ȴĬ��û��/us
r/localĿ¼�������ڸ�Ŀ¼��ֱ������/userlocalĿ¼������SLS�����ߵ�˵
������Ϊ�˶��������

For added flexibility, /usr/local has been left empty, so that locally
installed packages can be maintained separately from the SLS distribut
ion.Ϊ��������ԣ�/usr/local ��գ��Ա㱾�ذ�װ������������ SLS ��
�а�ֿ�ά�������ǿ��Դ�������ļ��нṹ��Ȼ������httpd_1.3Ŀ¼����
��ȥ

mkdir -p /usr/local/etc/httpd
cp -r /root/httpd_1.3/* /usr/local/etc/httpd/
��ȻNCSA HTTPd֧��ʹ��-d����Զ�������Ŀ¼��-f����Զ��������ļ�������
ͨ������п��Ƶ�Ҳ�ͽ���������ˣ���������Ŀ¼�Ļ����Լ��ٺ���Ĺ��
��

����NCSA HTTPd������ĵ����ɲο� NCSA httpd Overview (Link: https://ww
w6.uniovi.es/~antonio/ncsa_httpd/Overview.html)  �������ṩ����1.4�棬
��1.3��������ļ�������ͬ��

�༭NCSA HTTPd�����ļ�

NCSA HTTPd�������ļ�Ĭ���� /usr/local/etc/httpd/conf���access.conf-
dist��httpd.conf-dist��srm.conf-dist�������ģ���ļ��������ȸ�����ǣ�
������Ӧ����������ļ���Ȼ����С�Ķ����ɡ�

���⣬NCSA HTTPd��Ҫһ��������û������У������½�һ���Ϊ��www�����û�

cd /usr/local/etc/httpd/conf
cp httpd.conf-dist httpd.conf
cp srm.conf-dist srm.conf
cp access.conf-dist access.conf
#����www�û�
useradd www
�޸�httpd.conf

��User�����ô�nobody��Ϊwww��ServerName��ΪSLS����������޸�srm.conf
�����ʹ�����Ǹղ�ΪCERN HTTPd�������ҳ��

��DocumentRoot�����ø�Ϊ/root/myhttphome��DitectoryIndex��Ϊwelcome.ht
mlȻ�����Ǿ����иղű����httpd�ļ���Ӧ����/usr/local/etc/httpd/src��

cd /usr/local/etc/httpd/src
httpd
NCSA HTTPd�Ϳ�����ˡ�

���벢����Gopher

�ڻ���������������ҵ�һϵ�оɰ��Gopher������Ϳͻ���Դ�� https:/
/archive.org/details/OldGopherSources (Link: https://archive.org/detai
ls/OldGopherSources)

������gopher2.012.tar.Z�汾Ϊ������������ã����汾�Ĵ��������1994
��3�£��ӽ���������������ʱ�䡣������tar zxvf�����ѹ���Ϳ���
�õ�gopher2.012Ŀ¼������Ŀǰ��ѹ���������һЩ�Ѿ�������ļ����޸�
�������ã�������Ҫ���仹ԭ֮���ٱ��롣

cd gopher2.012
#ʹ��ԭʼ��Makefile.config�滻�޸Ĺ��İ汾
cp Makefile.config.org Makefile.config
#����ѱ�����ĵ�
make clean
#����gopher
make
Ȼ��������Ҫ����/usr/local/etc/gopherd.conf�Ϊ�����ļ�������ֻ��һ��
��hostalias: 192.168.1.29 ��Ӧ�����IP��ַ

echo "hostalias: 192.168.1.29" > /usr/local/etc/gopherd.conf
��������Ǿͻ���Ҫ����Gopher����Ŀ¼��������/root �´���gopher-dataĿ
¼��Ȼ�󴴽�������Ŀ¼hello��world��Ȼ��ֱ𴴽��������ı��ļ�story1��
story2������γ�һ��������GopherĿ¼�ṹ��

#����Gopher��Ŀ¼
mkdir /root/gopher-data
cd /root/gopher-data
#��������Gopher��Ŀ
mkdir hello
mkdir world
#���������ı��ļ�
echo "this is story1" > hello/story1
echo "this is story2" > world/story2
Ȼ��һ��������GopherĿ¼��׼����ˣ����ǻص��ղű����gopher2.012Ŀ¼
�У����е����ݴ������

p:softland:~/gopher2.012$ ls
Copyright             README                gophfilt/
MANIFEST              conf.h                make.com
Makefile              conf.h.org            object/
Makefile.config       doc/                  patchlevel.h
Makefile.config.dist  gopher/               test/
Makefile.config.org   gopherd/
gopher/Ŀ¼����Gopher�ͻ��ˣ���gopherd/���Ƿ�����������Ƚ��������
���gopherd���ĸ�ʽΪgopherd <Ŀ¼> <�˿�>

cd gopherd
gopherd /root/gopher-data 70
������Ǿͽ�Gopher�����������ˣ�Ȼ��Ϳ�������Gopher�ͻ�����鿴��
��������

cd ..
cd gopher
gopher 127.0.0.1
Ȼ��Ϳ��������ǸղŴ�����GopherĿ¼��

(Image: https://picx.zhimg.com/v2-60080b99d63b6181ef7a4cc59e0e746b_720
w.jpg?source=d16d100b)
ֵ��һ����ǣ��ڹ�ȥ30���GopherЭ��ı仯Ҫ��WWW�ٵö࣬������Ǹո�
������ɵ�Gopher�ͻ���Ҳ���Է�����http://gopher.floodgap.com (Link: ht
tp://gopher.floodgap.com) ��http://sdf.org (Link: http://sdf.org) ���
���ڻ�Ծ��Gopherվ�㡣

(Image: https://picx.zhimg.com/v2-148b40eb06c5774758336113aa584281_720
w.jpg?source=d16d100b)
����Windows telnet��С��ʾ����ʹ��ijЩ�ն˷�����򣬱���Windows�汾��T
elnet����Linuxʱ�����汾��Gopher�ͻ��˻ᱨ��I don't understand your
terminal type������ʱ��Ҫ�ֶ�����TERM���������� export TERM=vt100��
֮��Ϳ������ʹ��ˡ�

�¼�Ԥ��

��һ����������������WWW�������Gopher�����������Ҳ�л����Լ�������
ԭʼ�ķ�ʽ�ṩ��������������Ҫ��Internet��Ϣ������ˣ����ǡ���һ̨1
994���Linux���������Ŀ��Ҳ�������ˡ���ϵ�е����һ�������۽�����
΢������������ܷ�Χ�������ڰ������˵ͬ���Ҫ�IJ��֣�����X-Window����
������ͼ�λ���Mosaic������Լ�����������ŵĸ���Ӳ����Pocket 386��
�������