Linux下Apache服务器网页密码设置过程问题及解决方法
网上找到了许多关于这方面的文章,内容基本相同。经过实践,发现内容里普遍存在问题。以下是自己实践之后,修改了其中的错误,并记录下来的笔记。
在 Linux 或 UNIX 下的 Apache 服务器中给网页设置密码—这是一种很简单的基于用户名/口令的认证方式,当我们在浏览器中访问经此认证模式保护的URL链接时,将会出弹出一个对话框,要求用户键入用户名和口令。用户输入后,传给Apache服务器,Apache服务器验证它的正确性,如果正确,显示页面,否则出现401错误(没有权限)。这是怎么实现的呢?
实例一:需要用户名和口令的访问控制
,限制 WWW 服务器中 /home/httpd/html/backup/ 目录中网站 www.britepic.org 页面的访问,只允许用户“user1”以口令“passwd1”访问页面。
基本情况:
假设www.britepic.org 站点Apache服务器中的httpd.conf文件有设置为:
DocumentRoot /home/httpd/html
AccessFileName .htaccess
AllowOverride All
实现步骤:
1.使用htpasswd建立用户文件:
$ htpasswd -c /home/httpd/secr/.htpasswd user1
此程序会询问用户“user1”的口令,你输入“passwd1”,两次生效。
2.建立.htaccess文件
用“vi /home/httpd/html/backup/.htaccess”命令建立.htaccess文件,并写入以下几行:
AuthName "My Friend Only" (注:这个名字是任取的,并且必须有双引号)
AuthType Basic
AuthUserFile /home/httpd/secr/.htpasswd
require valid-user
最后设置文件.htpasswd和.htaccess的文件权限,确保Apache用户有读的权限这样就完成了网页密码设置的工作,现在你可以在浏览器中试一试效果了。
实例二:允许一组用户访问一个目录。
例如现在www.britepic.org站点想让myfriend
组中的m1与m2两个用户分别能使用口令“m1pass”和“m2pass”访问/home/httpd/html/
backup/目录中的页面。
实现步骤:
1.使用htpasswd建立用户文件,并在提示信息分别输入m1与m2两个用户的口令“m1pass”和“m2pass”:
htpasswd -c /home/httpd/secr/.htpasswd m1
htpasswd -c /home/httpd/secr/.htpasswd m2
2.建立组文件,用“vi /home/httpd
相关文档:
进程I/O函数,与pclose函数一起使用。
表头文件
#include <stdio.h>
函数定义
FILE * popen
( const char * command
, const char * type
);
int pclose
( FILE * stream
);
函数说明
popen() 函数通过创建一个管道,调用 fork 产生一个子进程,执行一个 shell 以运行命令来开启一 ......
今天装好了monodevelop,本来是想用来C#的,见他也支持C/C++开发,于是试了一下,感觉很不错,终于找到了linux下一个比较满意的C++开发环境。
以前写C++都是在Eclipse下写的,但Eclipse启动慢,配置麻烦,和java一起用的时候很容易出错,用的很不爽,当然� ......
访问文件
/etc/host.conf
告诉网络域名服务器如何查找主机名。(通常是 /etc/hosts,然后就是名称服务器;可通过 netconf 对其进行更改)
/etc/hosts
包含(本地网络中)已知主机的一个列表。如果系统的 IP 不是动态生成,就可以使用它。对于简单的主机名解析(点分表示法),在请求 DNS 或 NIS 网络名称服务器之前, ......
ls -l|grep ^d ----列出当前目录下的文件夹
ls -l|grep ^d|grep "tmp" ----列出当前目录下明子含有"tmp"的文件夹
for dir in `ls -l ~/dxy/|grep ^d | awk '{print $9}'` ---- awk '{print $9}' ,只print 文件夹的名字
do
echo "==== $dir"
cd ~/dxy;cd ......