2022年1月27日更新

今天又报错了,而且出错的这台服务器之前一直是好好的,也没装宝塔也没有user.ini文件。
原来是/dev/null的权限被更改了,进入终端,输入:

chmod 666 /dev/null

重新刷新出错页面,问题解决。

2020年9月14日更新

还是宝塔面板的问题,再一次出现了proc_open(/dev/null): failed to open stream: Operation not permitted的错误。
根据上次的教训,基本上能确定就是防跨站攻击的问题。因为出错的百科和之前那个在同一个服务器下,所以运行环境基本上是一致的。
但是当我想要在宝塔面板上取消防跨站攻击(open_basedir) 的选项时,竟然发现操作无效,就看到一个带叉叉的窗口,但是内容看不见。根据网上的线索,删除安装目录下的user.ini文件,选项被取消,问题也解决了。

2020年6月22日更新

最近换了台腾讯服务器测试MediaWiki,导入了之前网站上的数据库和文件,一切还算顺利,打开首页也没啥问题。结果随便点开其他页面,问题出现了。
proc_open-error.png
这次为了省事,所以直接用宝塔面板一键安装的,并且也从PHP的设置中将禁用函数proc_open删除了,可是网站还是提示出错。另外还报了一个open_basedir的警告。
先说后面的那个,宝塔面板中对于open_basedir的设置其实就是防跨站攻击。
baota-open_basedir.png
那么最关键的proc_open问题呢?
好吧,这次又是莫名其妙折腾好了,不过在好之前我还是尝试了一下下面的命令,不知道是不是跟它有关。

chmod a+x /path/to/extensions/Scribunto/includes/engines/LuaStandalone/binaries/lua5_1_5_linux_64_generic/lua

又或者只是因为我重新安装了一遍PHP7.3?

2017年11月19日更新

今天打算上Google上搜一下解决方案,重新打开页面的时候,发现之前的错误问题已经解决了,看来修改设置还是起到作用了,只是由于缓存的缘故没有及时反应出来而已。


2017年11月18日问题解决

维基百科的模板导了一大堆,随便找个页面复制点内容,结果发现有错误,而且都是同一个。

Lua错误:无法创建进程:proc_open不可用。请检查PHP的指令配置“disable_functions”。

红颜色的错误提醒触目惊心,而且我还不知道怎么能把它给屏蔽。
lua-error.png
从描述上来看就是PHP的配置文件中将proc_open功能给屏蔽了,找到服务器中的php.ini文件,找到disable_functions那行,删除其中的proc_open,保存退出。
刷新页面,错误仍然存在,以为是缓存的问题,换个浏览器再试,还是一样。
重新启动PHP服务也没用,甚至重启了服务器都没有解决问题。
难道是因为配置文件改错了,因为服务器中存在多个版本的PHP,时间一久难免记错。
php -i | grep "php.ini
确实是我修改的那个版本。
先把问题记录一下,找到答案之后再更新。

最后修改:2022 年 01 月 27 日
如果觉得我的文章对你有用,请随意赞赏