hMailServer中文论坛 QQ群:80049760 搭建专业企业级邮件服务器 联系Q3824517

DCOM权限、网页显示:Fatal error: Class 'COM' not found in *******

hMailServer教程相关文章。

版主: Hsia

回复
头像
Hsia
网站管理员
网站管理员
帖子: 333
注册: 2014年11月26日, 12:41
地址: 上海
联系:

DCOM权限、网页显示:Fatal error: Class 'COM' not found in *******

帖子 Hsia » 2015年2月7日, 12:45

一、安装phpwebadmin的时候,访问提示DCOM,默认情况下,IIS6不允许连接,因为Windows使用分布式COM权限来hMailServer。此外,Apache的运行与受限制的权限的用户帐户是不允许默认连接。
网页显示:Fatal error: Class 'COM' not found in *******
步骤
请按照以下步骤给IIS或Apache所需的权限使用DCOM连接到hMailServer。
1.从Windows控制面板,进入管理工具
2.打开组件服务
3.展开组件服务文件夹
4.展开降至计算机|我的电脑| DCOM配置
5.对hMailServer并选择属性右键单击
6.选择安全选项卡
7.在“启动和激活权限”中,选择自定义,然后单击编辑
8.在“组或用户名称”,单击添加
9.对于IIS6:添加内置IIS匿名用户帐户
10.对于Apache:添加Apache用户帐户
11.设置本地启动和本地激活权限此用户允许
官方说明:https://www.hmailserver.com/documentati ... hpwebadmin

没有上面的那么复杂,在php.ini 加上extension=php_com_dotnet.dll 就Ok

二、IIS处理,这我本人遇到的,然后是处理方法,希望有用。
1.在php.ini 加上extension=php_com_dotnet.dll
2.【开始】--【控制面板】--【管理工具】--【组件服务】--【组件服务】--【计算机】--【我的电脑】--【DCOM 配置】--【hMailServer】,属性--【安全】--【启动和激活权限】--【自定义】--【编辑】--【添加】--【高级】--【立即查找】--添加IIS用户“IIS_IUSRS”--【确定】--勾选“本地激活”--【确定】--【应用】--【确定】
3.重启IIs。

官方说明:https://www.hmailserver.com/documentati ... hpwebadmin

ainiyli2008
Level 1
Level 1
帖子: 4
注册: 2016年3月14日, 16:35

Re: DCOM权限、网页显示:Fatal error: Class 'COM' not found in *******

帖子 ainiyli2008 » 2016年3月23日, 14:25

我补充一下。。。楼主说到的“对于IIS6:添加内置IIS匿名用户帐户10.对于Apache:添加Apache用户帐户”。楼主在下面说到了iis的账户叫IIS_IUSRS,但还有用其他容器的,比如apache、JBOSS、webloigc、等等,一时半会弄不明白到底是哪个账户,所以干脆添加everyone这个账户。不管什么容器。都有权访问。

jumio
Level 2
Level 2
帖子: 5
注册: 2015年6月2日, 15:17

Re: DCOM权限、网页显示:Fatal error: Class 'COM' not found in *******

帖子 jumio » 2017年4月20日, 16:00

没有上面的那么复杂,在php.ini 加上extension=php_com_dotnet.dll 就Ok

这条足够用了。

18640492028
Level 1
Level 1
帖子: 2
注册: 2019年2月22日, 17:38

Re: DCOM权限、网页显示:Fatal error: Class 'COM' not found in *******

帖子 18640492028 » 2019年2月25日, 15:33

Fatal error: Uncaught Error: Class 'COM' not found in C:\Program Files\Apache24\htdocs\PHPWebAdmin\initialize.php:17 Stack trace: #0 C:\Program Files\Apache24\htdocs\PHPWebAdmin\index.php(23): require_once() #1 {main} thrown in C:\Program Files\Apache24\htdocs\PHPWebAdmin\initialize.php on line 17

我试了php.ini
register_globals = Off
com.allow_dcom = true
short_open_tag = On
extension_dir = "C:/Program Files/php7.3/ext"
[PHP_COM_DOTNET]
extension = php_com_dotnet.dll
以上我都试了,还有在本地激活添加everyone 都没好用过,什么鬼????

找到原因了,因为php版本不对,php5.6以后就不支持php_com_dotnet.dll的用法

回复