Fedora默认有Apache2这个包,我们可以用下列命令安装它:
yum install httpd
现在配置下系统使得Apache能够随着系统启动而启动…
chkconfig –levels 235 httpd on
… 启动Apache:
/etc/init.d/httpd start
现在打开浏览器,访问http://192.168.2.233,你就应该能看到Apache2的预留页了:
apache的一个欢迎页面。。。。
然后打开下面的文件:
vim /etc/httpd/conf.d/welcome
注释掉其中的内容,在浏览http://192.168.2.233就是一张空白页面了。
下面只要在/var/www/html/目录下创建任何文件或软链接,就可以在http://192.168.2.233上看到了。
比如:
touch /var/www/html/hh
即可浏览到一个文件hh。
创建软连接:
ln -s /tmp/你好.rmvb /var/www/html/film
-----------------
ssh lijunlzu@202.201.1.135 -N -f -R 30000:localhost:80
----------------------------------
如果出现403错误,则:
关闭系统的防火墙和selinux,同时设置
chmod 777 /var/www/html/ -R
最后重启系统,应该就可以了。
-----------------------------------------------
Apache服务器中设置目录访问输入密码
访问网站的某个目录,需要输入用户名和密码。
1:首先需要配置你的apache,允许可以使用.htaccess文件的。
vi /app/apache/conf/httpd.conf #/app/apache 是我安装apache的目录
#修改以下地方,注意配置文件中有多处,你要改的是你的文档中间的。我的是<Directory "/home/www/test">...</Directory>>
AllowOverride All #把原来的AllowOverride None改为AllowOverride All,除了All,None,请参考附注1查看还有哪些值,及一些值的含义。
2:重新启动apache,让其生效了
/app/apache/bin/apachect1 restart #重新启动apache,注意你的apache启动目录,我的是/app/apache,记得要把它改为自己的apache安装目录哦
3:生成.htpasswd文件了
/app/apache/bin/htpasswd -c /home/www/test/mydir/.htpasswd yxy
#yxy为用户名,mydir/为我要加身份认证的文件夹 /home/www/test为我的网站跟目录 -c为创建新的htpasswd文件和用户,回车后,会要求你输入密码及确认密码。
注:初次生成的密码在以后怎么更改呢?可以输入以下指令来更改密码
/app/apache/bin/htpasswd /home/www/test/mydir/.htpasswd yxy
#回车后,会让你输入新的密码及再次输入新密码确认。
4:手写.htaccess文件
vi /home/www/test/mydir/.htaccess #创建.htaccess
在vi编辑器中输入:
AuthUserFile /home/www/test/mydir/.htpasswd
AuthGroupFile /dev/null
AuthName EnterPassword
AuthType Basic
require valid-user
:wq 保存退出
注:AuthUserFile #.htpasswd的服务器目录。指定.htpasswd密码文件
AuthGroupFile #群组文件,这里是指到垃圾箱里去了。
AuthName
AuthType Basic #授权类型
require user wsabstract #允许访问的用户,如果希望表中所有用户都允许,可以使用 require valid-user,我这里是使用了require valid-user
5: 不需要重启apache就可以立即看到效果
附注1:
要控制在.htaccess文件中可以使用的指令组,需要在主配置文件中使用AllowOverride指令。下面列出了可以在AllowOverride指令所使用的指令组
指令组 可用指令 说明
============================
AuthConfig
AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require
进行认证、授权以及安全的相关指令
=============================
FileInfo
DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter
控制文件处理方式的相关指令
=============================
Indexes
AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName
控制目录列表方式的相关指令
==============================
Limit
Allow,Deny,Order
进行目录访问控制的相关指令
==============================
Options
Options, XBitHack
启用不能在主配置文件中使用的各种选项
=============================
All
全部指令组
可以使用以上所有指令
=============================
None
禁止使用所有指令
禁止处理.htaccess文件
==============================
基于用户和密码的访问
通常用在要求更严格的地方。用户需要密码和口令才能访问。这就叫用户认证。实现用户认证需要两个步骤,先要建立一个用户密码文件,存放用户名和密码。再就是把限制访问的文档保护起来。
(1)建立用户密码文件
apache 提供了ht位于prepasswd程序用于建立用户密码文件。这个程序通常fix/bin/下,htpasswd 的使用方法如下:
htpasswd -c yourpath/yourfilename username
yourpath和yourfilename是存放用户密码文件的路径名和文件名.注意这个文件不要放到被web可以读取的地方。也不要放到被保护的文档中。比如可以放在/usr/local/apache/etc下, —c 是指建立这个文件。
htpasswd -c /usr/local/apache/etc/users wxp 指在该目录下建立users文件并加入用户wxp,然后在根据提示输入密码。在加第二个用户时就不用-c了。建好后的文件就象系统的passwd文件,前面是用户名,后面是MD5算法加密后的密文。
wxp 6A4CDr0325
Liming dDK4sJS1S3
(2)建立.htaccess文件
在你要保护的文档目录下建立这个文件。就像这样
AuthName “LoginIn“ // 这个是被保护页面的名字
AuthUserFile /usr/local/apache/etc/users //用户密码文件
AuthAuthoritative on
require valid-user
AuthType Basic //使用的认证协议
这里AuthName , 表示了被保护页面的名字。如果不同的页面使用了不同的AuthName。则用户在进入这些不同Ahtuname的页面是需重输用户名和密码。AhtuType 有两种:Basic 和Digest。这里用了Basic,如果用Digest,只要把AuthType Basic换成AuthType Digest AuthUserFile 换成AuthDigestFile,然后用APACHE提供的htDigest程序生成密码文件。格式是htdigest -c /usr/local/apache/etc/filename digest username
filename 是密码文件名.username 是要加的用户名.digest提供基于md5的认证方法。
目前只有IE5可以使用Digest提供的MD5认证.但MD5提供更强的安全。
AuthUserFile 也可以是AuthGroupFile 这样可以指定一个组的用户。如AuthGroupFile /usr/local/apache/etc/admingroup.这个文件可用任何编辑器建立。格式是这样admin:wxp xpw other: Liming Ximing.
AuthAuthoritative on 可以不给不在用户文件里的用户提供验证密码的机会。具有更高的安全性。
--- require 这句是指那些用户可以被认证。比如require user wxp ,那么只有wxp这个用户可以登入.这样就可以以一个用户密码文件实现不同级别的访问。
(3)限制访问级别
你可以在不同的目录下实现不同的访问级别。如可以让部分用户可以GET,部分可以POST. 这是在httpd.conf文件中配置。在要限制的目录的句子中插入:
require vaild-user
这里GET POST PUT可以依需要修改。并在该目录中的下面加上AllowOverride AuthConfig ,这样APACHE就会去该目录下找.htaccess 文件。