📄 username-password database for tclhttpd.mht
字号:
<TD>Enter Password:</TD><TD><INPUT =
type=3D\"PASSWORD\" size=3D\"25\" name=3D\"newpass\" =
value=3D\"$newpass\"></TD>
</TR><TR>
<TD>Verify Password:</TD><TD><INPUT =
type=3D\"PASSWORD\" size=3D\"25\" name=3D\"vfypass\" =
value=3D\"$vfypass\"></TD>
</TR>
</TABLE>
<p><input type=3D"submit" value=3D"Save" ></p>
</form>
[errorPass]
<form method=3D"POST" action=3D"page2.fmkt">
<p>
<input type=3D"submit" value=3D"Cancel"><input type=3D"hidden" =
name=3D"cancel">
</form>
</body>
</html></PRE>
<H4>******************** End page2.fmkt =
******************************</H4>
<P><A href=3D"http://wiki.tcl.tk/6146">NB</A> I've just tried this and =
having a=20
bit of a problem. I first had to prepend Fmkt_ to your procs in the the =
three=20
pages, and now the procs are found. Submitting from start.tml, the =
server just=20
hangs....w/out error...This is on WinXP, tclhttpd3.4, and one of the =
latest=20
tclkits. Custom code gets loaded, and db is created...</P>
<P><A href=3D"http://wiki.tcl.tk/6146">NB</A> OOP's I take the above =
back. On=20
Jeff's advice I dropped the above into an unwrapped headsup, and things =
work as=20
expected. Guess I must check my tclhttpd instal....</P>
<HR>
<P><A href=3D"http://wiki.tcl.tk/1280">DKF</A>: I was just wondering if =
it would=20
wondering if it would be possible to hook up to an <A=20
href=3D"http://wiki.tcl.tk/1827">LDAP</A>-hosted password database. That =
sort of=20
thing is popular round here...</P>
<P><A href=3D"http://wiki.tcl.tk/6132">Jeff Smith</A> Just a thought, =
Squid [<A=20
href=3D"http://www.squid-cache.org/" rel=3Dnofollow>2</A>] uses many =
types of=20
authentication. From the Squid FAQ [<A=20
href=3D"http://www.squid-cache.org/Doc/FAQ/FAQ-23.html#ss23.1"=20
rel=3Dnofollow>3</A>]</P><PRE> Authentication is actually performed =
outside of main Squid process. When Squid starts, it spawns a
number of authentication subprocesses. These processes read usernames =
and passwords on stdin, and
reply with "OK" or "ERR" on stdout. This technique allows you to use a =
number of different
authentication schemes, although currently you can only use one scheme =
at a time.
The Squid source code comes with a few authentcation processes. These =
include:
LDAP: Uses the Lightweight Directory Access Protocol
NCSA: Uses an NCSA-style username and password file.
MSNT: Uses a Windows NT authentication domain.
PAM: Uses the Linux Pluggable Authentication Modules scheme.
SMB: Uses a SMB server like Windows NT or Samba.
getpwam: Uses the old-fashioned Unix password file.
In order to authenticate users, you need to compile and install one of =
the supplied authentication
modules, one of the others, or supply your own.
You tell Squid which authentcation program to use with the =
authenticate_program option in squid.conf.
You specify the name of the program, plus any command line options if =
necessary. For example:
authenticate_program /usr/local/squid/bin/ncsa_auth =
/usr/local/squid/etc/passwd''</PRE>
<P>Maybe if you could somehow make Tclhttpd look like Squid to the above =
authentication modules it could be a solution.</P>
<P><A href=3D"http://wiki.tcl.tk/8976">schlenk</A> It is simple to =
authenticate=20
against LDAP with the <A href=3D"http://wiki.tcl.tk/1827">ldap</A> =
module in=20
tcllib, basically just try an ldap::bind with the users DN and his =
password.</P>
<HR>
<P><A href=3D"http://wiki.tcl.tk/3226">Category Internet</A> | <A=20
href=3D"http://wiki.tcl.tk/9315">Category Security</A></P></DIV></DIV>
<DIV id=3Dmenu_area>
<DIV id=3Dwiki_menu>
<UL id=3Dmenu>
<LI><A href=3D"http://wiki.tcl.tk/">Home</A>
<LI><A href=3D"http://wiki.tcl.tk/4">Recent changes</A>
<LI><A href=3D"http://wiki.tcl.tk/3">Help</A>
<LI><A href=3D"http://wiki.tcl.tk/_edit/8657">Edit</A>
<LI><A href=3D"http://wiki.tcl.tk/_history/8657">History</A>
<LI><A =
href=3D"http://wiki.tcl.tk/_ref/8657">References</A></LI></UL></DIV>
<FORM id=3Dsearchform action=3D/_search method=3Dget><INPUT =
type=3Dhidden=20
name=3D_charset_> <INPUT id=3Dsearchtxt onblur=3DsetSearch(); =
onfocus=3DclearSearch();=20
value=3D"Search in titles" name=3DS> </FORM>
<FORM id=3Dgsearchform action=3D/_gsearch method=3Dget><INPUT =
type=3Dhidden=20
name=3D_charset_> <INPUT id=3Dgoogletxt onblur=3DsetGoogle(); =
onfocus=3DclearGoogle();=20
value=3D"Search in pages" name=3DS> </FORM>
<DIV class=3Dnavigation>
<DIV id=3Dpage_toc>
<DIV class=3Dtoc1>Page contents </DIV></DIV></DIV>
<DIV class=3Dextra>
<DIV id=3Dwiki_toc>
<DIV class=3Dtoc1>Getting started=20
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/299">What is =
Tcl?</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/487">What is =
Tk?</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20786">Getting=20
Tcl/Tk</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20788">Getting=20
help</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20789">Learning=20
Tcl</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/20790">The =
Tcl Dev=20
Xchange</A></DIV>
<DIV class=3Dtoc3><A class=3Dtoc href=3D"http://wiki.tcl.tk/20791">About =
the=20
Wiki</A></DIV></DIV>
<DIV class=3Dtoc1>Community=20
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/590">Advocacy</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/828">Conferences</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/20792">Chat, =
news,=20
lists</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20794">History</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/17182">Humor</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/10681">People</A></DIV>
<DIV class=3Dtoc3><A class=3Dtoc href=3D"http://wiki.tcl.tk/20810">Tcl=20
websites</A></DIV></DIV>
<DIV class=3Dtoc1>Reference=20
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/1887">Companies</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20788">Getting=20
help</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20795">Online=20
books</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20796">Online=20
tutorials</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/3109">Manual =
pages</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/20797">Tcl=20
roadmap</A></DIV>
<DIV class=3Dtoc3><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/49">Acronyms</A></DIV></DIV>
<DIV class=3Dtoc1>Tcl software=20
<DIV class=3Dtoc2><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/20798">Applications</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/20799">The =
Tcl=20
core</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20800">Development=20
tools</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/11485">Documentation</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/940">Extensions</A></DIV>
<DIV class=3Dtoc3><A class=3Dtoc href=3D"http://wiki.tcl.tk/20801">Toys =
and=20
games</A></DIV></DIV>
<DIV class=3Dtoc1>Tcl in the wild=20
<DIV class=3Dtoc2><A class=3Dtoc href=3D"http://wiki.tcl.tk/20802">Major =
applications</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/20803">Businesses</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20804">Education</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/20805">Engineering</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/20806">Government</A></DIV>
<DIV class=3Dtoc2><A class=3Dtoc =
href=3D"http://wiki.tcl.tk/20811">Medical</A></DIV>
<DIV class=3Dtoc3><A class=3Dtoc=20
href=3D"http://wiki.tcl.tk/20809">Other</A></DIV></DIV></DIV></DIV></DIV>=
<DIV class=3Dfooter>
<P id=3Dfooter><A href=3D"http://wiki.tcl.tk/">Home</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/4">Recent changes</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/3">Help</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/_edit/8657">Edit</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/_history/8657">History</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/_ref/8657">References</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/2">Search</A> =E2=80=A2 <A=20
href=3D"http://wiki.tcl.tk/_toc/toggle">Toggle Menu</A></P></DIV></DIV>
<P style=3D"DISPLAY: none"><A href=3D"http://wiki.tcl.tk/5.html" =
rel=3Dnofollow>DO NOT=20
CLICK THIS LINK.</A> It is a trap for badly behaved bots. If you follow =
this=20
link, you will be unable to use the site afterwards.</P>
<SCRIPT src=3D"http://wiki.tcl.tk/search.js" =
type=3Dtext/javascript></SCRIPT>
<SCRIPT src=3D"http://wiki.tcl.tk/backrefs.js" =
type=3Dtext/javascript></SCRIPT>
<SCRIPT src=3D"http://wiki.tcl.tk/_toc/toc.js" =
type=3Dtext/javascript></SCRIPT>
</BODY></HTML>
------=_NextPart_000_0081_01C87A6A.A0310BB0
Content-Type: text/css;
charset="gb2312"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://wiki.tcl.tk/wikit.css
BODY {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 90%; BACKGROUND: =
white; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: black; PADDING-TOP: 0px; =
FONT-FAMILY: sans-serif
}
H1 {
FONT-WEIGHT: normal; FONT-SIZE: 160%
}
H2 {
FONT-SIZE: 120%
}
A {
COLOR: blue; TEXT-DECORATION: none
}
A:link {
COLOR: blue; TEXT-DECORATION: none
}
A:visited {
COLOR: blue; TEXT-DECORATION: none
}
A:active {
COLOR: blue; TEXT-DECORATION: none
}
A:unknown {
COLOR: blue; TEXT-DECORATION: none
}
PRE {
COLOR: #331100; FONT-FAMILY: monospace
}
PRE.prediff {
COLOR: #000000; FONT-FAMILY: monospace; BACKGROUND-COLOR: #e0e0e0
}
DIV.header {
MIN-HEIGHT: 53px; BACKGROUND: #ddd
}
DIV.logo {
PADDING-RIGHT: 50px; PADDING-LEFT: 15px; FONT-SIZE: 120%; BACKGROUND: =
url(/images/plume.png) no-repeat right top; FLOAT: right; =
PADDING-BOTTOM: 0px; MARGIN: 0px 1.5em 0px 0px; VERTICAL-ALIGN: middle; =
PADDING-TOP: 0.75em; HEIGHT: 40px; TEXT-ALIGN: left
}
DIV.logo A.logo {
COLOR: black
}
DIV.centered {
TEXT-ALIGN: center
}
HR {
BORDER-TOP: #999 1px solid; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; MARGIN: 1em 0px; HEIGHT: 0px; =
BORDER-RIGHT-WIDTH: 0px
}
DIV.title {
PADDING-RIGHT: 0px; PADDING-LEFT: 5px; FONT-WEIGHT: normal; FONT-SIZE: =
160%; BACKGROUND: #ddd; PADDING-BOTTOM: 3px; PADDING-TOP: 5px; =
TEXT-ALIGN: left
}
DIV.updated {
PADDING-RIGHT: 0px; PADDING-LEFT: 7px; FONT-SIZE: 90%; PADDING-BOTTOM: =
7px; COLOR: #333; PADDING-TOP: 0px
}
DIV#menu_area {
MARGIN-TOP: 1px; DISPLAY: none; PADDING-LEFT: 5px; BACKGROUND: #ddd; =
FLOAT: left; OVERFLOW: hidden; WIDTH: 145px
}
DIV#menu_area UL {
PADDING-LEFT: 0px; LIST-STYLE-TYPE: none
}
DIV#wrapper {
BACKGROUND: white; FLOAT: right; MARGIN-LEFT: 0px; WIDTH: 100%; =
MARGIN-RIGHT: 5px
}
DIV#content {
PADDING-RIGHT: 5px; MARGIN-TOP: 5px; PADDING-LEFT: 5px; MARGIN-BOTTOM: =
5px; PADDING-BOTTOM: 0px; MARGIN-LEFT: 5px; PADDING-TOP: 0px
}
DIV.navigation {
CLEAR: left; MARGIN-TOP: 1em; BACKGROUND: #ddd; FLOAT: left; WIDTH: =
145px
}
DIV.extra {
CLEAR: left; BACKGROUND: #ddd; FLOAT: left; WIDTH: 145px; BOTTOM: 0px; =
TOP: 0px
}
DIV.footer {
CLEAR: both; PADDING-LEFT: 135px; TEXT-ALIGN: center
}
DIV.footer P {
TEXT-ALIGN: center
}
DIV#wiki_menu {
FONT-SIZE: 90%; MARGIN-BOTTOM: 1em; LINE-HEIGHT: 150%
}
DIV#menu_area {
DISPLAY: none
}
DIV#wiki_menu {
DISPLAY: none
}
DIV#page_toc {
DISPLAY: none
}
DIV#wiki_toc {
DISPLAY: none
}
FORM#searchform {
DISPLAY: none
}
FORM#gsearchform SPAN#toggle {
DISPLAY: none
}
FORM#searchform {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
FORM#gsearchform {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
INPUT#searchtxt {
WIDTH: 135px; COLOR: gray
}
INPUT#googletxt {
WIDTH: 135px; COLOR: gray
}
INPUT#gsearchtxt {
WIDTH: 135px
}
TABLE {
BORDER-RIGHT: #ddd 1px solid; BORDER-TOP: #ddd 1px solid; FONT-SIZE: =
95%; MARGIN: 2px; VERTICAL-ALIGN: top; BORDER-LEFT: #ddd 1px solid; =
BORDER-BOTTOM: #ddd 1px solid; BORDER-COLLAPSE: collapse
}
DIV.centered TABLE {
MARGIN: 2px auto
}
TABLE TD {
VERTICAL-ALIGN: top
}
THEAD TH {
BORDER-RIGHT: gray 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: gray 1px =
solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; BORDER-LEFT: gray 1px =
solid; PADDING-TOP: 2px; BORDER-BOTTOM: gray 1px solid; =
BACKGROUND-COLOR: #ddd; TEXT-ALIGN: left
}
TBODY TD {
BORDER-RIGHT: #ddd 1px solid; PADDING-RIGHT: 5px; PADDING-LEFT: 5px; =
PADDING-BOTTOM: 2px; BORDER-LEFT: #ddd 1px solid; PADDING-TOP: 2px
}
TBODY TR.odd {
BACKGROUND-COLOR: #eef
}
TH.Rev {
TEXT-ALIGN: right
}
TH.Line {
TEXT-ALIGN: right
}
TH.Word {
TEXT-ALIGN: right
}
TH.Annotated {
TEXT-ALIGN: right
}
TH.WikiText {
TEXT-ALIGN: right
}
TD.Rev {
TEXT-ALIGN: right
}
TD.Line1 {
TEXT-ALIGN: right
}
TD.Line2 {
TEXT-ALIGN: right
}
TD.Word1 {
TEXT-ALIGN: right
}
TD.Word2 {
TEXT-ALIGN: right
}
TD.Annotated {
TEXT-ALIGN: right
}
TD.WikiText {
TEXT-ALIGN: right
}
TH.Line {
TEXT-ALIGN: center
}
TH.Word {
TEXT-ALIGN: center
}
TD.Line3 {
TEXT-ALIGN: center
}
TD.Word3 {
TEXT-ALIGN: center
}
TD.Date {
MIN-WIDTH: 10em; FONT-SIZE: 90%; VERTICAL-ALIGN: top
}
TD.Who {
FONT-SIZE: 90%; VERTICAL-ALIGN: top
}
TABLE.history {
MARGIN-BOTTOM: 2em
}
DIV.annotated {
BORDER-TOP: #0000cc 1px dotted; OVERFLOW: hidden; ZOOM: 1
}
SPAN.versioninfo {
PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em; FONT-SIZE: small; =
BACKGROUND: #ffffcc; FLOAT: right; PADDING-BOTTOM: 0.2em; BORDER-LEFT: =
#0000cc 1px dotted; WIDTH: 20em; PADDING-TOP: 0.2em; BORDER-BOTTOM: =
#0000cc 1px dotted
}
SPAN.versionwho {
TEXT-ALIGN: right
}
DIV.oldwikiline {
BACKGROUND: #ffa0a0; MARGIN: 0px
}
DIV.oldwikiline PRE {
BACKGROUND: #ffa0a0; MARGIN: 0px
}
DIV.newwikiline {
BACKGROUND: #80ff80; MARGIN: 0px
}
DIV.newwikiline PRE {
BACKGROUND: #80ff80; MARGIN: 0px
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -