⇤ ← Revision 1 as of 2004-09-05 22:05:37
Size: 2364
Comment:
|
Size: 3365
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 38: | Line 38: |
在前面我们已经把用户认证的口令加进去了。下一步,我们要使用.htaccess方式来提供Basic认证处理。这个文件我们将放在你的Blog起始目录下。为了使其生效,我们要首先修改httpd.conf来使其生效。 {{{ <Directory "/var/www/html/*/"> AllowOverride AuthConfig Options ExecCGI ... }}} 上面AllowOverride放在Directory中,表示本目录及所有子目录都启用.htaccess(如果存在的话)。这样,我们后面要写的.htaccess将会生效。 接着,在你的Blog起始目录下(我的是/var/www/html/limodou)下生成.htaccess文件,内容为: {{{ AuthType Basic AuthName "By Invitation Only" AuthUserFile /etc/httpd/conf/blogpasswdfile <Files weblog-add.cgi> Require user limodou </Files> }}} 这样当访问weblog-add.cgi你会看到弹出一个输入用户名,口令的对话框。 上面改完后,重启Apache就可以了。httpd -k restart 或httpd -k start == 讨论 == |
-- limodou [DateTime(2004-09-05T22:05:37Z)] TableOfContents
使用weblog-add.py来增加新贴
原来以为PyBlosxom不能增加新贴,结果发现了weblog-add.py。但运行地报错,说没有授权,就改了一下,以为有错。结果在这个链接[http://roughingit.subtlehints.net/pyblosxom/weblogs/tools/tutorial/ Using weblog-add to add entries in your blosxom blog]才发现,是我不会用,按照上面的方法做了如下测试成功。
使用简介
weblog-add.py是专门用来给PyBlosxom增加新贴的程序。因为增加新贴本身是一个有危险的工作,因此,一般的Blog系统都需要进行用户认证后,进入管理界面才可以。但PyBlosxom作为一个Hacker的Blog,更多地是个人使用,因此这方面功能不强。weblog-add.py可以完成这一工作,简单,但同样也考虑了用户的认证。现在它采用的方式是Apache的Basic认证方式。但Basic的认证方式一个缺点是,密码本身不加密,因此可能有一定的危险性。不过,对于我们的Blog系统可能危险性不大,因为它只是一个应用的用户,是不可以直接通过Ftp,Telnet来控制主机的。因此我们不用太关心安全性的问题。(这一点可以讨论一下)
因此我们主要要做的是如何给我们的Blog增加用户认证的功能。
增加认证用户
使用Apache提供的htpasswd程序,命令行为
htpasswd -c passwd文件名 用户名
如果已经存在口令文件,则-c可以不加。passwd文件名应该是放在Apache 用户不能直处理的位置,比如我是放在了:/etc/httpd/conf/blogpasswdfile
举例:
#htpasswd -c /etc/httpd/conf/blogpasswdfile limodou New password: Re-type new password: Adding password for user limodou
放置weblog-add.py
- 将weblog-add.py放在你的Blog系统的起始目录下,我的是/var/www/html/limodou。将后缀改为.cgi。因为我的Apache中只认为.cgi的是一个cgi程序。
- 修改weblog-add.cgi文件。主要是修改:
- blog_root='/var/www/html/limodou/entries' #这里是你的Blog的起始位置
user2link 函数中的 return '<a href="mailto:%(user)[email protected]">%(user)s</a>' % {"user": user}中的邮箱信息改成你的邮箱即可
认证设置
在前面我们已经把用户认证的口令加进去了。下一步,我们要使用.htaccess方式来提供Basic认证处理。这个文件我们将放在你的Blog起始目录下。为了使其生效,我们要首先修改httpd.conf来使其生效。
<Directory "/var/www/html/*/"> AllowOverride AuthConfig Options ExecCGI ...
上面AllowOverride放在Directory中,表示本目录及所有子目录都启用.htaccess(如果存在的话)。这样,我们后面要写的.htaccess将会生效。
接着,在你的Blog起始目录下(我的是/var/www/html/limodou)下生成.htaccess文件,内容为:
AuthType Basic AuthName "By Invitation Only" AuthUserFile /etc/httpd/conf/blogpasswdfile <Files weblog-add.cgi> Require user limodou </Files>
这样当访问weblog-add.cgi你会看到弹出一个输入用户名,口令的对话框。
上面改完后,重启Apache就可以了。httpd -k restart 或httpd -k start