很多站长朋友们都不太清楚phpacl权限控制,今天小编就来给大家整理phpacl权限控制,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 我们网站打不开了,提示401.3错误! 2、 在测试PHP代码时,显示指定的网页无法访问,是什么原因? 3、 本地测试163K,安装好了IIS和PHP1.5.4,怎么配置和安装??详细步骤 4、 php权限管理如何实现 5、 浏览php时出现401.3无权限错误.急求解决方法高分! 我们网站打不开了,提示401.3错误!HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。
原因:IIS匿名用户一般属于Guests组,而我们一般把存放网站的硬盘的权限只分配给administrators组,这时候按照继承原则,网站文件夹也只有administrators组的成员才能访问,导致IIS匿名用户访问该文件的NTFS权限不足,从而导致页面无法访问。
解决方案:给IIS匿名用户访问网站文件夹的权限,方法:进入该文件夹的安全选项,添加IIS匿名用户,并赋予相应权限,一般是读、写。
在测试PHP代码时,显示指定的网页无法访问,是什么原因?IIS状态代码的含义
概要
当用户试图通过HTTP或文件传输协议(FTP)访问一台正在运行Internet信息服务(IIS)的服务器上的内容时,IIS返回一个表示该请求的状态的数字代码。该状态代码记录在IIS日志中,同时也可能在Web浏览器或FTP客户端显示。状态代码可以指明具体请求是否已成功,还可以揭示请求失败的确切原因。
更多信息
日志文件的位置
在默认状态下,IIS把它的日志文件放在%WINDIR\System32\Logfiles文件夹中。每个万维网(WWW)站点和FTP站点在该目录下都有一个单独的目录。在默认状态下,每天都会在这些目录下创建日志文件,并用日期给日志文件命名(例如,exYYMMDD.log)。
HTTP
1xx-信息提示
这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个1xx响应。
100-继续。
101-切换协议。
2xx-成功
这类状态代码表明服务器成功地接受了客户端请求。
200-确定。客户端请求已成功。
201-已创建。
202-已接受。
203-非权威性信息。
204-无内容。
205-重置内容。
206-部分内容。
3xx-重定向
客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。
301-对象已永久移走,即永久重定向。
302-对象已临时移动。
304-未修改。
307-临时重定向。
4xx-客户端错误
发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。400-错误的请求。
401-访问被拒绝。IIS定义了许多不同的401错误,它们指明更为具体的错误原因。这些具体的错误代码在浏览器中显示,但不在IIS日志中显示:
401.1-登录失败。
401.2-服务器配置导致登录失败。
401.3-由于ACL对资源的限制而未获得授权。
401.4-筛选器授权失败。
401.5-ISAPI/CGI应用程序授权失败。
401.7–访问被Web服务器上的URL授权策略拒绝。这个错误代码为IIS6.0所专用。
403-禁止访问:IIS定义了许多不同的403错误,它们指明更为具体的错误原因:
403.1-执行访问被禁止。
403.2-读访问被禁止。
403.3-写访问被禁止。
403.4-要求SSL。
403.5-要求SSL128。
403.6-IP地址被拒绝。
403.7-要求客户端证书。
403.8-站点访问被拒绝。
403.9-用户数过多。
403.10-配置无效。
403.11-密码更改。
403.12-拒绝访问映射表。
403.13-客户端证书被吊销。
403.14-拒绝目录列表。
403.15-超出客户端访问许可。
403.16-客户端证书不受信任或无效。
403.17-客户端证书已过期或尚未生效。
403.18-在当前的应用程序池中不能执行所请求的URL。这个错误代码为IIS6.0所专用。
403.19-不能为这个应用程序池中的客户端执行CGI。这个错误代码为IIS6.0所专用。
403.20-Passport登录失败。这个错误代码为IIS6.0所专用。
404-未找到。
404.0-(无)–没有找到文件或目录。
404.1-无法在所请求的端口上访问Web站点。
404.2-Web服务扩展锁定策略阻止本请求。
404.3-MIME映射策略阻止本请求。
405-用来访问本页面的HTTP谓词不被允许(方法不被允许)
406-客户端浏览器不接受所请求页面的MIME类型。
407-要求进行代理身份验证。
412-前提条件失败。
413–请求实体太大。
414-请求URI太长。
415–不支持的媒体类型。
416–所请求的范围无法满足。
417–执行失败。
423–锁定的错误。
5xx-服务器错误
服务器由于遇到错误而不能完成该请求。
500-内部服务器错误。
500.12-应用程序正忙于在Web服务器上重新启动。
500.13-Web服务器太忙。
500.15-不允许直接请求Global.asa。
500.16–UNC授权凭据不正确。这个错误代码为IIS6.0所专用。
500.18–URL授权存储不能打开。这个错误代码为IIS6.0所专用。
500.100-内部ASP错误。
501-页眉值指定了未实现的配置。
502-Web服务器用作网关或代理服务器时收到了无效响应。
502.1-CGI应用程序超时。
502.2-CGI应用程序出错。application.
503-服务不可用。这个错误代码为IIS6.0所专用。
504-网关超时。
505-HTTP版本不受支持。
FTP
1xx-肯定的初步答复
这些状态代码指示一项操作已经成功开始,但客户端希望在继续操作新命令前得到另一个答复。
110重新启动标记答复。
120服务已就绪,在nnn分钟后开始。
125数据连接已打开,正在开始传输。
150文件状态正常,准备打开数据连接。
2xx-肯定的完成答复
一项操作已经成功完成。客户端可以执行新命令。200命令确定。
202未执行命令,站点上的命令过多。
211系统状态,或系统帮助答复。
212目录状态。
213文件状态。
214帮助消息。
215NAME系统类型,其中,NAME是AssignedNumbers文档中所列的正式系统名称。
220服务就绪,可以执行新用户的请求。
221服务关闭控制连接。如果适当,请注销。
225数据连接打开,没有进行中的传输。
226关闭数据连接。请求的文件操作已成功(例如,传输文件或放弃文件)。
227进入被动模式(h1,strong,h3,h4,p1,p2)。
230用户已登录,继续进行。
250请求的文件操作正确,已完成。
257已创建“PATHNAME”。
3xx-肯定的中间答复
该命令已成功,但服务器需要更多来自客户端的信息以完成对请求的处理。331用户名正确,需要密码。
332需要登录帐户。
350请求的文件操作正在等待进一步的信息。
4xx-瞬态否定的完成答复
该命令不成功,但错误是暂时的。如果客户端重试命令,可能会执行成功。421服务不可用,正在关闭控制连接。如果服务确定它必须关闭,将向任何命令发送这一应答。
425无法打开数据连接。
426Connectionclosed;transferaborted.
450未执行请求的文件操作。文件不可用(例如,文件繁忙)。
451请求的操作异常终止:正在处理本地错误。
452未执行请求的操作。系统存储空间不够。
5xx-永久性否定的完成答复
该命令不成功,错误是永久性的。如果客户端重试命令,将再次出现同样的错误。500语法错误,命令无法识别。这可能包括诸如命令行太长之类的错误。
501在参数中有语法错误。
502未执行命令。
503错误的命令序列。
504未执行该参数的命令。
530未登录。
532存储文件需要帐户。
550未执行请求的操作。文件不可用(例如,未找到文件,没有访问权限)。
551请求的操作异常终止:未知的页面类型。
552请求的文件操作异常终止:超出存储分配(对于当前目录或数据集)。
553未执行请求的操作。不允许的文件名。
常见的FTP状态代码及其原因
150-FTP使用两个端口:21用于发送命令,20用于发送数据。状态代码150表示服务器准备在端口20上打开新连接,发送一些数据。
226-命令在端口20上打开数据连接以执行操作,如传输文件。该操作成功完成,数据连接已关闭。
230-客户端发送正确的密码后,显示该状态代码。它表示用户已成功登录。
331-客户端发送用户名后,显示该状态代码。无论所提供的用户名是否为系统中的有效帐户,都将显示该状态代码。
426-命令打开数据连接以执行操作,但该操作已被取消,数据连接已关闭。
530-该状态代码表示用户无法登录,因为用户名和密码组合无效。如果使用某个用户帐户登录,可能键入错误的用户名或密码,也可能选择只允许匿名访问。如果使用匿名帐户登录,IIS的配置可能拒绝匿名访问。
550-命令未被执行,因为指定的文件不可用。例如,要GET的文件并不存在,或试图将文件PUT到您没有写入权限的目录。
对HTTP404状态码的理解
HTTP 404 错误意味着链接指向的网页不存在,即原始网页的URL失效,这种情况经常会发生,很难避免,比如说:网页URL生成规则改变、网页文件更名或移动位置、导入链接拼写错误等,导致原来的URL地址无法访问;当Web 服务器接到类似请求时,会返回一个404 状态码,告诉浏览器要请求的资源并不存在。但是,Web服务器默认的404错误页面,无论Apache还是IIS,均十分简陋、呆板且对用户不友好,无法给用户提供必要的信息以获取更多线索,无疑这会造成用户的流失。
因此,很多网站均使用自定义404错误的方式以提供用户体验避免用户流失。一般而言,自定义404页面通用的做法是在页面中放置网站快速导航链接、搜索框以及网站提供的特色服务,这样可以有效的帮助用户访问站点并获取需要的信息。
404错误的处理方式
(一)定制404错误页面的基本原则
首先应明确的是,404错误应工作在服务器级而不是网页级。对定制使用动态页面如PHP脚本类型的404页时,必须确保在PHP执行前服务器已经顺利地送出“404”状态码,不然,一旦执行到了ISAPI级别,返回的状态码便只能是“200”或其他如“302”之类的重定向状态码了。
其次,在自定义网站的404错误页面时,对设置的错误页面URL链接应使用相对路径而不是绝对路径,而且自定义404页面应该放在网站根目录下。尽管无效链接可能是多种形式的URL,但当发生404访问错误时,WEB服务器会自动将其转到自定义的当404错误页中,这跟URL的形似没有关系。
(二)Apache下设置404错误页面
为Apache Server设置 404错误页面的方法很简单,只需在.htaccess 文件中加入如下内容即可:
ErrorDocument 404 /notfound.php
注意:
1.切记不要将404错误转向到网站主页,否则可能会导致主页在搜索引擎中消失
2.切记不要使用绝对URL(例如: 形式),如果使用绝对URL返回的状态码是“302”+“200”(已测试)
(三)IIS/ASP.net下设置404错误页面
首先,修改应用程序根目录的设置,打开 “web.config” 文件编辑,在其中加入如下内容:
<configuration>
<system.web>
<customErrors mode=”On” defaultRedirect=”error.asp”>
<error statusCode=”404〃 redirect=”notfound.asp” />
</customErrors>
</system.web>
</configuration>
注:上文例中“error.asp”为系统默认的404页面,“notfound.asp”为自定义的404页面,使用时请修改相应文件名。
然后,在自定义的404页面“notfound.asp”中加入:
<%
Response.Status = “404 Not Found”
%>
这样,便可以保证IIS能够正确地返回“404”状态码
(四)在IIS/ASP.net下设置404静态页面
设置静态404错误页面的方法则比较简单,在IIS管理器中右键单击要管理的网站,打开“属性”中的“自定义错误信息”页,为“404”设定相应的错误信息页即可
本地测试163K,安装好了IIS和PHP1.5.4,怎么配置和安装??详细步骤第一步:配置PHP
如果你下载的是安装版的php,安装的时候可以选择使用IIS,安装完毕就会自动配置好IIS。如果你下载的是zip版的,则按照以下步骤配置:
1、把PHP-5.2.0 zip(目前最新版本)解压放到 D:\php (你可以选择目录,本例以此说明)。
2、将php.ini-dist复制到 C:\Windows 目录下并改名为php.ini,复制 php5ts.dll和 libmysql.dll到 C:\Windows\system32 中。
3、用记事本打开php.ini,查找“extension_dir”,然后把 extension_dir = "./"修改为 extension_dir = "D:\php\ext"注意:路径在Win下一定要使用\
4、在记事本中查找“;extension=php_mysql.dll”和“;extension=php_gd2.dll”,然后把前面的“;”去掉,即把 ;extension=php_mysql.dll 改为 extension=php_mysql.dll
把以下内容前面的;去掉
;extension=php_mbstring.dll
;extension=php_gd2.dll
;extension=php_dbase.dll
;extension=php_ldap.dll
5、找到 ;session.save_path = "/tmp"将';'去掉.设置你保存session的目录。
如:session.save_path = "C:\Windows\Temp";
6、找到 register_globals 将 Off 改为 On
7、找到 allow_url_include 将 Off 改为 On
8、保存 php.ini
9、接下来在IIS中进行设置,打开Web服务扩展,添加PHP扩展,扩展名为PHP,要求的文件为d:\php\php5isapi.dll,打开默认网站-〉属性对话框,切换到“主目录”选项卡,然后点“配置”按钮打开“应用程序配置对话框”,点“添加”按钮打开“添加/编辑应用程序扩展名映射”对话框。在“可执行文件”输入框中,指向d:\php\php5isapi.dll,在“扩展名”输入框里面输入“.php”,并选中“脚本引擎”和“检查文件是否存在”两个复选框,一路确定,选择文档,添加默认内容为 index.php ,确定并重启IIS后退出IIS。
此时PHP环境基本已经配置成功
在WEB根目录(如我的D:\website)里建一个名为test.php的文件内容如下
<? echo phpinfo(); ?>
用浏览器打开
如果可以看到php配置输出信息就OK了
第二步:安装MySql
1、先安装mysql,双击执行 Setup.exe,点Next选择Custom(自定义)安装,然后点Next(下一步),默认安装目录为 C:\Program Files\MySQL\MySQL Server 5.0\ 为了方便进入我们可以安装在D盘根目录下,点Change(改变目录)按钮来更改安装目录为D:\mysql。完成后出现创建 MySQL测试数据 帐号的界面,简单一点,我们选择Skip Sign-Up跳过这一步,既安装完成。这里有个配置向导的选项Configure the MySQL Server now默认的是选起的,我们就顺便完成配置吧。
这里的配置是很简单的,我们只要点Next(下一步)即可,有几个地方要说明:Install As Windows Service默认的是选中的,这一选项要选上,作用是将MySQL作为Windows的服务运行。Service Name(服务名)默认的“MySQL”,可以改你喜欢的服务名。下面的Launch the MySQL Server automatically要勾选,这样Windows启动时,MySQL就会自动启动服务。Include Bin Directory in Windows PATH这一选项是修改环境变量,在PATH的值中增加bin目录,可以根据怎么的爱好来决定是否选上,如果选上,在CMD下不需要进入bin目录就可以运行mysql。在Manual Selected Default Character Set / Collation 下 Character Set: 选择 gbk 或 gb2312,接着点下一步,Modify Security Settings是设置根帐号的密码,设置后点下一步,excute完成安装。
如果是zip文件,用解压缩软件将压缩包直接解压到指定目录,如 D:\mysql;
2、安装完成后,打开“开始”按钮中的“运行”,输入命令:D:\mysql\bin\mysqld-nt.exe --install,并执行;
3、打开“开始”按钮下的“程序”=》“管理工具”=》“服务”,找到“mysql”服务,启动它;
4、至此,mysql安装完成,重启win2003 server。您还可以打开D:\mysql\bin\MySQLInstanceConfig.exe,再次配置MySQL,在Manual Selected Default Character Set / Collation 下 Character Set: 选择 gbk 或 gb2312(我选择的是 gbk ),后面还会要求输入 root 登录密码(如:123456)。
至此,mysql安装完成。
第三步:PHPMyAdmin 的安装配置
1、将phpMyAdmin-2.9.1.zip解压到WEB根目录(d:\website\中去),重命名文件夹为myadmin或其它
打开myadmin 目录中的 config.sample.inc.php
找到以下这些(以下我已改好):
$cfg['blowfish_secret'] = 'cookie'; //在等号后的单引号内加入 cookie
$cfg['Servers'][$i]['controluser'] = 'root'; //将 pmausr 改为 root
$cfg['Servers'][$i]['controlpass'] = '123456'; //分别填上你mysql的用户和密码即可
改好了保存并将config.sample.inc.php改为config.inc.php,在浏览器打开 输入你的用户名和密码,便可以管理mysql了。
如果以上都正常的话,开始建网站吧 ^-^ 蓝色数码写于2006-11-15 14:09 以前写的,转来此处。补充:mysql连接错误(10061)该怎么办?
Error: Can't connect to MySQL server on 'localhost' (10061)
请检查你的mysql服务是否启动!
MySQL的1067错误
错误信息为:
A system error has occurred.
System error 1067 has occurred.
The process terminated unexpectedly.
在我的机上的解决办法是:
修改%windir%\my.ini,增加
[mysqld]
#设置basedir指向mysql的安装路径
basedir=D:\mysql
datadir=D:\data
或者删除%windir%\my.ini
在c:\下添加一个 c:\my.cnf文件
文件内容
[mysqld]
#设置basedir指向mysql的安装路径
basedir=D:\mysql
datadir=D:\mysql\dataMySQL5.1.28版设置密码 2009.1.16X:\MySQL\bin\mysqladmin -u root -p shutdownEnter password:*****后面的*****表示数据库管理新密码!2009.1.31补充解决办法您未被授权查看该页,HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。症状:HTTP 错误 401.3 - 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。
原因:IIS匿名用户一般属于Guests组,而我们一般把存放网站的硬盘的权限只分配给administrators组,这时候按照继承原则,网站文件夹也只有administrators组的成员才能访问,导致IIS匿名用户访问该文件的NTFS权限不足,从而导致页面无法访问。
解决方案:
给IIS匿名用户访问网站文件夹的权限,方法:进入该文件夹的安全选项,添加IIS匿名用户,并赋予相应权限,一般是读、写。
php权限管理如何实现可以使用acl控制实现,参考acl全集如下:
1、角色表
角色id - 用户组id - 特殊权限id(其中特殊权限 > 用户组所包含权限)
2、用户组表
用户组id - 用户组信息
3、权限表
权限表id - 权限信息 - 与功能模块的关系
4、用户组-权限关联表
用户组id - 权限集合
5、特殊权限表
特殊权限id - 权限集合
注意:
1、设置权限的删除、添加主要围绕在 用户组-权限关联表、特殊权限表。
2、用户的权限获取则是验证登陆的时候通过用户组和特殊权限获取权限集合。
3、展示的时候,根据2获取的权限集合从权限表获取所有功能模块的导航菜单。
浏览php时出现401.3无权限错误.急求解决方法高分!401.3 未经授权:访问由于 ACL 对所请求资源的设置被拒绝详细说明401.3 未经授权:访问由于 ACL 对所请求资源的设置被拒绝
其实这也是一个权限错误,但是这个错误的产生与IIS授权并无太大关系。这个错误的产生是由操作系统对文件及文件夹的权限控制引起的。
解决方法:
1、首先在文件夹选项中关闭“使用简单文件共享”。
2、在站点文件夹上点右键——属性——安全,打开文件夹安全选项,找到IUSR_这个帐号(如果没有就添加进去),赋予这个帐号相应的读取,修改等权限。当然设置这些权限的时候请仔细考虑,因为这会影响到站点的安全性。
关于phpacl权限控制的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于phpacl权限控制 php权限设计的详细内容...