用Apache仿照FTP的列表方式的虚拟主机配置写法

<Virtualhost *:80>

DocumentRoot “/home/123456”

ServerName ftp.aaa.com

AddDefaultCharset UTF-8

<directory home=””/home/123456″”>

Options Indexes

IndexOptions NameWidth=* //这个是让表格字段名自动适应宽度

IndexOptions FancyIndexing //采用类似Windows的排列方式

IndexOptions FoldersFirst //文件夹排在文件前面

IndexOptions HTMLTable //采用HTML的表格方式

AddIcon (IMG,/icons/pdf.gif) .pdf

AddIcon (IMG,/icons/doc.gif) .doc

AddIcon (IMG,/icons/xls.gif) .xls

AddIcon (IMG,/icons/ppt.gif) .ppt

AddIcon (IMG,/icons/rar.gif) .rar .zip .tgz .tar.gz .rpm .iso

AddIcon (IMG,/icons/msi.gif) .msi .exe

AddIcon (IMG,/icons/txt.gif) .txt

AddIcon (IMG,/icons/dll.gif) .dll .sys

AddIcon (IMG,/icons/xml.gif) .xml

AddIcon (IMG,/icons/html.gif) .htm .html

AddIcon (IMG,/icons/media.gif) .wmv .rm .rmvb .asf .mov

AddIcon (IMG,/icons/img.gif) .jpg .gif .png .bmp

IndexStyleSheet “ftp.css” //指定CSS文件,对样式进行具体规定

AllowOverride None

Order allow,deny

Allow from all

</directory>

</Virtualhost>

最简单快速的Apache二级域名实现方法介绍

发布时间:2007.07.26 06:45 来源:赛迪网 作者:sixth

首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com

其次,在 httpd.conf 中打开 mod_rewrite

之后,在 httpd.conf 的最后,添加以下内容:

 

RewriteEngine on

RewriteMap lowercase int:tolower

RewriteMap vhost txt:/usr/local/etc/apache/vhost.map

RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$

RewriteCond ${vhost:%1} ^(/.*)$

RewriteRule ^/(.*)$ %1/$1

 

其中的 /usr/local/etc/apache 是你的 apache 服务器配置文件所在路径,根据实际情况更改。

然后,在这个所在路径的目录下创建一个文件: vhost.map

内容为:

 

www.domain.com /usr/local/www/data-dist/domain

bbs.domain.com /usr/local/www/data-dist/bbs

anyname.domain.com /usr/local/www/data-dist/anyname

 

以上部分都是:” 域名+空格+绝对路径” 的形式。

 

最后,在你的网站根目录 /usr/local/www/data-dist 下,创建对应目录:

domain , bbs , anyname 等等,理论上可以无限。

 

这样,通过浏览器,访问 www.domain.com 时,实际上访问的就是 /usr/local/www/data-dist/domain目录下的文件。同理,访问 bbs.domain.com 实际上访问的就是 /usr/local/www/data-dist/bbs 目录下的文件。而且,你可以

随时更改 vhost.map 来增加、删除、修改你的二级域名和所指向的实际路径,不用重启 apache。

Apache主机信息保密方法

Apache主机在默认状态下用Firefox浏览器访问,如果遭遇错误页面,除了提示出错之外,还会将你的机器软件环境显示出来,如你的Apache版本,PHP版本……这不是有点恐怖?在骇客眼里,这可省了他们不少时间去确定软件版本。

在Apache的配置文件httpd.conf里面,找到 ServerTokens 这项,设置为ServerTokens Prod。还有将ServerSignature这项设置为 ServerSignature Off。

经过这样设置,再遇到这种页面,只会提示是Apache主机,但版本和其他软件信息不会再出现了。不过以防万一,还是自己制作出错信息页面比较好。替换 掉Apache的对应文件即可。这个出错页面的制作也可以很简单,仅仅文字配些图片即可。这样至少可以避免自己将秘密和盘托出了。

Apache虚拟主机配置写法

NameVirtualHost 60.191.43.53:80

<VirtualHost www.ryuhi.com>
ServerAdmin webmaster@ryuhi.com
DocumentRoot E:/vhosts/ryuhi/new_web
ServerName www.ryuhi.com
</VirtualHost>
<Directory
“E:/vhosts/ryuhi/new_web”>
    Options
FollowSymLinks Includes ExecCGI
   
AllowOverride All
    Order
allow,deny
    Allow from
all
</Directory>

<VirtualHost www.zjgps.net>
ServerAdmin webmaster@zjgps.net
DocumentRoot E:/vhosts/hzdjt
ServerName www.zjgps.net
</VirtualHost>
<Directory “E:/vhosts/hzdjt”>
    Options
FollowSymLinks Includes ExecCGI
   
AllowOverride All
    Order
allow,deny
    Allow from
all
</Directory>

在httpd.conf里指定的DocumentRoot和ServerName到这里还要重新写一遍,一般写在最前面,这样的话,Apache会将这个配置作为该IP的服务器的默认访问网站。