首先 - 我不确定这是否是发布我的问题的正确位置因此,如果我在这里做错了,请告诉我,我会在其他地方重新发布。 此外,我整个周末都试图通过谷歌找到我的问题的答案 - 没有运气。
我正在尝试让MediaWiki在我的服务器上运行。我希望通过UNIX套接字使用postgresql。我将我的socket存储在/ run下,我曾经通过PHP输入这样的东西来连接到数据库:
$db_connection = pg_connect("host='/run' user='user_name' password='some_password' dbname='database_name');
因此,在通过安装脚本配置MediaWiki时,我只需在“服务器”输入框中键入“/ run”,希望将其插入连接字符串。所以一切正常,直到我到达最后一步(脚本实际完成所有工作)并且我得到一个信息,表示创建表时最后一个条目在尝试写入数据库时显示错误。所以我使用psql连接到数据库,没有找到脚本创建的表...
这就是我在安装脚本终止时得到的结果:
Could not insert main page: A database error has occurred. Did you forget to run maintenance/update.php after upgrading? See: https://www.mediawiki.org/wiki/Manual:Upgrading#Run_the_update_script Query: SELECT nextval('externallinks_el_id_seq') Function: DatabaseBase::query Error: 42P01 ERROR: relation "externallinks_el_id_seq" does not exist LINE 1: .../* DatabaseBase::query 188.220.126.122 */ nextval('externall... ^
所以这就是问题 - 有没有人通过UNIX套接字使用过postgresql的MediaWiki?如果是这样,那么请问如何将这些信息提供给MediaWiki?
答案 0 :(得分:0)
进入我的http堆栈设置后,我注意到我的权限太受限制了。放松它们并允许“其他人”小组阅读“维基媒体”目录后,事情似乎正在起作用。我不确定这是否是解决这个问题的“正确”解决方案,并且如果有人提出更好的想法,我会很感激,但目前我的问题已经解决了。
要完成它可能很重要,即使我使用的是UNIX套接字,我仍然保持默认端口值不变。