There is a good news and a bad news. Tamara, thanks for letting me test the server in realtime.

Good news: there is an easy temporary solution: create a file index.php containing this line:

<?php include_once("pmwiki.php"); # See PmWiki.Installation

Then call your wiki with the index.php file instead of pmwiki.php.

Bas news: that server just hangs if some content is posted by the author, and if in the script there is the expression "preg_replace(.../e".

In PHP 5.4, the use of the eval /e parameter in preg_replace was deprecated but not removed. It appears that many hosting providers decided to block that function even in PHP 5.3, and PmWiki and other PHP software rely heavily on it.

On the server I tested, it is probably done on the server side, not by the PHP interpreter, because it doesn't hang if the "/e" part is in a variable like
 $rx = "/.../e";
 $z = preg_replace($rx, $y, $z);

It also doesn't seem to check the content of included files, that's why the trick with index.php works (for now).

While the temporary solution may work for you now, in the future it may stop working. There are many other hosting providers where the function works correctly, but how can we be sure that it will work in the future?

On other servers the PHP interpreter blocks the function so there is no way to "trick" it.

Petko

Tamara Temple writes:
I've just upgraded the GD web host I have access to from 5.2 (!?!) to 5.3 (?!!?) — it will take a bit for it to activate. SSH access is not enabled on this account, and it would cause a change in the DNS, which I'm not in control of, and the people whom actually own the account are busy with other things, so I can't offer that. I can offer FTP access, however. This is a super clean install of pmwiki experiencing the errors (only changed WikiTitle and DefaultPasswords) so it should be a decent test bed.


_______________________________________________
pmwiki-users mailing list
[email protected]
http://www.pmichaud.com/mailman/listinfo/pmwiki-users

Reply via email to