A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Yt雨天 初级黑马   /  2017-4-11 22:53  /  842 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

目录访问权限
一个粘袋你,就是一个“目录”
每个目录 都应该给其设定  访问权限,语法如下
<Directory  "要设置权限的目录路径">
  #设置当一个请求没有给定请求文件名没有默认网页 首页 的时候 显示文件留俄标

Options indexes

#设置权限控制的先后顺序只有2中:DENY,ALLW(先拒绝,后允许)allow,deny(先允许后拒绝)

Order deny,allow

#Deny 用于设定要拒绝访问的来源地址或服务器名,几乎没有实际意义!
Deny from 拒绝名单  比如 deny from 192.168.3.8. 172.180.4


Allow from 允许名单 比如 Allow from all

#设置该文件夹下的“默认网页”(首页)可以设置多个用于请求中不带文件名的时候自动使用该文件作为“返回”页面

DIRECTORYINDEX index.php index.html main.php default.php 123.html

</Directory>

目录访问权限中的“分布式权限”

对于某个目录的访问权限 我们在apache 中使用 Directory 来设定,但可能不够方便 :
1 apache 配置修改 必须重启apache
2 某个站点中的“下级目录”访问权限 不方便单独设置

这种 可以称为“集中式权限”;
分布式权限 就是针对某个网站的任何一个下级目录 都可以单独去设置其访问权限 并且可以不重启 apache就生效

第一步:
  在该站点对应目录访问权限的Directorty

#下一行 表示当前目录 允许“分布式”权限配置
AllowOverride all

第二步
在该目录下的任何子目录中,创建一个特殊的文件(.htaccess)在该文件中写所需要的“权限内容”(几乎跟Direcetor中的写法一样);

www.php39.com 初始可以浏览


在该文件中添加一个文件 .htacess其内容为:

Deny from all
Allow from 192.168.3.4

在该day1文件中就多了一个文件:
.htaccess


多站点的配置

分3步;
1:在apache的主配置文件httpd.conf中“打开”多粘袋你虚拟主机配置文件项(关键词:vhosts):

表示此时会载入(include)该文件

2:在 httpd-vhosts.conf设定希望提供“多站点”服务的ip地址和端口号,通常默认是*:80,其中“*”代表所有ip  默认其实apache安装好之后就设置好了 无需手动设置(关键字 NameViralHost)
NameViralHost *:80

3:
  然后就一个粘袋你一个站点的加上!形式如下
<virtualhost *:80>
  #设置 站点1的各项信息
</virtualhost>
<virtualhost *:80>
  #设置 站点2的各项信息
</virtualhost>

注意
1 先把 httpd-vhosts.conf文件中的2个初始安装生成的站点,删除!!!
2 每个站点的设置项 主要就3个
ServerName
DocumenetRoot
<Directory>…</Directory>
3 在多个站点配置中, 第一个站点被称为“默认站点”,如果某个请求的域名无法跟任何一个站点“匹配”,就会当作请求的是默认站点去处理(应答)
4一旦实现了多站点配置,则最初安装成功时“默认站点”就失效了, 我们将“localhost”当做一个普通站点重新设置就可以了 也剋以将其放在第一个位置又重新作为默认站点

#第1个站点的配置


<virtualhost *:80>
  ServerName www.pphp39.com
   #设定该站点的“别" 即通过一下域名也可以访问
    ServerAlias mip.php39.com
  DocumenetRoot "文件路径"
  <Directory “文件路径”>
        oprions indexes
        order deny,allow
        Allow from all
        #几乎不需要写deny
  </Directory>
</virtualhost>

#第2个站点的配置

<virtualhost *:80>
  ServerName www.guagua.com
  DocumenetRoot "文件路径"
  <Directory “文件路径”>
        oprions indexes
        order deny,allow
        Allow from all
        DirectoryIndex index3.html
  </Directory>
</virtualhost>


#第3个站点的配置

<virtualhost *:80>
  ServerName localhost
  DocumenetRoot "文件路径"
  <Directory “文件路径”>
        oprions indexes
        order deny,allow
        Allow from all
  </Directory>
#设置虚拟目录别名
Alias /soft “文件路径”
<Directory “文件路径”>
        oprions indexes
        order deny,allow
        Allow from all
</virtualhost>


目录别名(虚拟目录)的设置:
某个站点www.abc.com所对应文件夹下有一个目录为d1 则可以这样访问目录:
www.abc.com/d1
这个d1 就称为”真实目录“

虚拟目录就是:
该站点不存在某目录名 但却可以使用同样的语法形式 去访问 比如:
www.abc.com/d2  //假设 该站点目录下根本就没有d2这个目录 此时可以访问

实现这种技术 就是所谓”目录别名“ (虚拟目录)的设置 如下:
在一个站点中 做如下2步

1: 设置目录别名 的名字和其对应的“实际真实目录(问嘉佳)的位置”
2: 设置该真实目录的访问权限(否则是禁止访问的);
<Direcotry “真实目录路径”>
…………跟其他目录权限设置一样
</Direcotry>



主机(站点)配置

一个长点的两个核心信息
  主机名(服务器名,站点名)severname服务器名
  站点位置(站点目录路径)

默认情况下apache安装成功 默认配置好的站点,该站点的实际位置在
  apache装位置/htdocs/
  默认主机名是安装时设置的
单站点配置项

端口监听:

在papche的主配置文件httpd.conf中,

可以同时写多个listen监听  如果只写入端口 表示本机的多个ip 都是用该端口
否则表示“负责”(监听)该ip 的该端口

设置主机(站点)的名字:服务器名,站点名

severname 服务器名

:也可以设置为SeverName www.abc.com


设置主机(站点)的物理路径:
Documentroot“实际物理路径”
重要观念
  站点就“文件夹”要他做站点 就是站点


forbidden 禁制

更换网站路径

在httpd.conf中
更改
DocumentRoot "本地的文件路径"
给权限
<Directory "本地的文件路径">
Options Indexes
Order Deny,Allow
Allow from all
DirectoryIndex index3.html

</Directory>




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马