加入收藏 | 设为首页 | 会员中心 | 我要投稿 好传媒网 (https://www.haochuanmei.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php虚拟主机配置、访问权限配置、分布式文件配置

发布时间:2022-10-16 01:31:02 所属栏目:PHP教程 来源:网络
导读: 首先要开启vhost.conf配置,

打开vhost.conf进行配置
为了使用基于域名的虚拟主机技术,我们需要指定服务器的ip和端口来接收服务。
这个通过NameVirtualHost指令完成。
NameVirtualHost*:

首先要开启vhost.conf配置,

打开vhost.conf进行配置

为了使用基于域名的虚拟主机技术,我们需要指定服务器的ip和端口来接收服务。

这个通过NameVirtualHost指令完成。

NameVirtualHost*:80

其中*表示所有的ip地址,如果是一个具体的ip,你可以写上这个ip,但建议使用*,80指的是端口。

接下来,要单独的配置具体的域名,通过VirtualHost指令段,其参数必须和NameVirtualHost

而且在指令段中必须包含ServerName和DocumentRoot

php主机空间_主机管理系统 php_php主机

配置hosts文件,指定域名和DNS的对应关系。

php主机空间_php主机_主机管理系统 php

通过浏览器访问某个域名的时候,需要进行域名的解析,首先找本地的hosts文件,如果能解析,就使用本地的配置,如果不能解析,则去外网进行解析。

现在去访问localhost,会怎么样?

会访问到在vhost文件中配置的第一个虚拟主机。

默认的虚拟主机,如果访问一个url,没有配置对应的虚拟主机,则会访问到vhost文件中配置的第一个虚拟主机。

主机管理系统 php_php主机_php主机空间

再来配置一个

那如果要访问原来的localhost。

在hosts文件配置域名ip对应关系

?配置细节

?配置项一般不区分大小写,但参数通常是大小写敏感的

?配置项要顶格写,否则无效

?#表示注释

?/和\的使用,路径的结尾不用添加斜线,建议使用/

?""的使用,地址要使用引号包含

?Apache的每一次配置,包括后面的php.ini的配置,都需要重启apache才能生效

?如果配置错误,则Apache不能正常启动

访问权限配置

在G盘中配置一个虚拟主机shop.cc,然后在浏览器中进行访问,

php主机空间_php主机_主机管理系统 php

说明没有权限。

Apache有一个严格的权限控制。

通过directory指令来进行权限的配置。

默认的一个权限配置

主机管理系统 php_php主机_php主机空间

第一种解决方案:在主配置文件中配置directory段,如下

php主机_主机管理系统 php_php主机空间

第二种解决方案,在辅助文件中,对应的virtualhost指令段中进行配置(推荐)

主机管理系统 php_php主机_php主机空间

注意,这个配置要求更加严格,

将shop网站下的index.html更名为index1.html,出现如下状况:

php主机空间_主机管理系统 php_php主机

默认的索引页,

DirectoryIndexindex.html

在默认情况下php主机,只索引index.html,如果要默认能够访问index.php,可以在此处添加

DirectoryIndexindex.htmlindex.php

索引列表

如果没有默认的索引页,它会将该文件夹下面的所有文件以列表的形式展示出来,但是需要有权限才行。

php主机空间_主机管理系统 php_php主机

在实际的网站部署时,索引列表是应该关闭的。

FollowSymLinks是指的符号链接,linux系统才有效。

关于Deny和Allow的说明

[总则]:

影响最终判断结果的只有两点:

?order语句中allow、deny的先后顺序;

?allow、deny语句中各自包含的范围。

修改完配置后要保存好并重启Apache服务,配置才能生效;

开头字母不分大小写;

allow、deny语句不分先后顺序,谁先谁后不影响最终判断结果,但都会被判断到;

order语句中,“allow,deny”之间“有且只有”一个逗号(英文格式的),而且先后顺序很重要;

Apache有一条缺省规则,“orderallow,deny”本身就默认了拒绝所有的意思,因为deny在allow的后面;同理,“orderdeny,allow”本身默认的是允许所有;

“orderallow,deny”代表先判断allow语句再判断deny语句,反之亦然。

如果主文件和辅助文件都配置了权限,会怎么办?

以辅助文件为主

注意options这个指令,不会叠加,所以有时候我们会看到在indexes有一个+或者-的出现。

分布式配置文件

.htaccess

分布式配置文件,名字是固定的

配置分布式文件步骤:

1.开启分布式配置,默认情况下,这个是关闭的

将AllowOverrideNone改为AllowOverrideAll就开启了分布式配置

2.创建.htaccess

使用editplus编辑器或其他高级编辑器来创建

3.配置相应的权限

凡是写在directory中的权限配置都可以写在这个文件当中。

denyfromAll

分布式配置文件修改之后,不需要重启,立即生效。

和directory配置一样,所配置的权限在该目录及其子目录生效。

思考:使用.htaccess好不好?

优点:方便,给内容提供者一个自由配置权限的机会。

缺点:性能所损失(不小),只要开启分布式配置,那么它会在每个文件夹下搜索.htaccess。

一般不推荐使用分布式配置文件。

?注意细节

?.htaccess文件,比较特殊,可以使用editplus或者ST2等编辑器来创建。

?.htaccess属于目录级别的控制,对应于Directory指令段中的配置。

?.htaccess默认并未启用,可在主配置文件中使用allowoverride指令加以配置。

?配置修改.htaccess文件,不需要重启,每次都会读取,性能有损失。

(编辑:好传媒网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!