Page MenuHomePhabricator

Running from a symbolic link fails
Open, Needs TriagePublic

Description

When the the Flow code directory is placed outside of /extensions and symbolically linked to from within it, then running /maintenance/update.php yields the following:

PHP Warning: require_once(/var/www/arabdigitalexpression.org/wiki/extensions/Flow-REL1_26-c89d781/maintenance/../../../maintenance/Maintenance.php): failed to open stream: No such file or directory in /var/www/arabdigitalexpression.org/wiki/extensions/Flow-REL1_26-c89d781/maintenance/FlowUpdateRecentChanges.php on line 7
PHP Fatal error: require_once(): Failed opening required '/var/www/arabdigitalexpression.org/wiki/extensions/Flow-REL1_26-c89d781/maintenance/../../../maintenance/Maintenance.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/arabdigitalexpression.org/wiki/extensions/Flow-REL1_26-c89d781/maintenance/FlowUpdateRecentChanges.php on line 7

The MW1.26 code is based at /var/www/arabdigitalexpression.org/wiki/mw , which is itself a symbolic link to a directory in a higher level, for the sake of codebase sharing among wikis.

Moving the Flow code directory to be physically under /extensions solves the problem.
However this is the only extension other than SMW that exhibits the same issue. I run many other extensions via linking without any problems.

I think it has to do with the way Flow-REL1_26-c89d781/maintenance/FlowUpdateRecentChanges.php constructs the path to /maintenance/Maintenance.php