check some prereqs for installation
This commit is contained in:
parent
2ad667f704
commit
458c037867
55
install.php
55
install.php
@ -3,7 +3,11 @@ define('INSTALLDIR', dirname(__FILE__));
|
|||||||
|
|
||||||
function main()
|
function main()
|
||||||
{
|
{
|
||||||
checkPrereqs();
|
if (!checkPrereqs())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||||
handlePost();
|
handlePost();
|
||||||
} else {
|
} else {
|
||||||
@ -13,6 +17,55 @@ function main()
|
|||||||
|
|
||||||
function checkPrereqs()
|
function checkPrereqs()
|
||||||
{
|
{
|
||||||
|
if (file_exists(INSTALLDIR.'/config.php')) {
|
||||||
|
?><p class="error">Config file "config.php" already exists.</p>
|
||||||
|
<?
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (version_compare(PHP_VERSION, '5.0.0', '<')) {
|
||||||
|
?><p class="error">Require PHP version 5 or greater.</p><?
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$reqs = array('gd', 'mysql', 'curl',
|
||||||
|
'xmlwriter', 'mbstring',
|
||||||
|
'gettext');
|
||||||
|
|
||||||
|
foreach ($reqs as $req) {
|
||||||
|
if (!checkExtension($req)) {
|
||||||
|
?><p class="error">Cannot load required extension "<?= $req ?>".</p><?
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!is_writable(INSTALLDIR)) {
|
||||||
|
?><p class="error">Cannot write config file to "<?= INSTALLDIR ?>".</p>
|
||||||
|
<p>On your server, try this command:</p>
|
||||||
|
<blockquote>chmod a+w <?= INSTALLDIR ?></blockquote>
|
||||||
|
<?
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!is_writable(INSTALLDIR.'/avatar/')) {
|
||||||
|
?><p class="error">Cannot write avatar directory "<?= INSTALLDIR ?>/avatar/".</p>
|
||||||
|
<p>On your server, try this command:</p>
|
||||||
|
<blockquote>chmod a+w <?= INSTALLDIR ?>/avatar/</blockquote>
|
||||||
|
<?
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkExtension($name)
|
||||||
|
{
|
||||||
|
if (!extension_loaded($name)) {
|
||||||
|
if (!dl($name.'.so')) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function showForm()
|
function showForm()
|
||||||
|
Loading…
Reference in New Issue
Block a user