Old:Bugs 3.5-Apollo: config inc php: Difference between revisions
m (Protected "Bugs 3.5-Apollo: config inc php" [edit=sysop:move=sysop]) |
mNo edit summary |
||
Line 1: | Line 1: | ||
{{Uc nav 3.5 bugs}} | |||
{ | |||
{ | |||
'''''config.inc.php''''' | '''''config.inc.php''''' | ||
Line 27: | Line 8: | ||
'''Problem:''' In vary rare situations the environment variable “Disk” is not passed to PHP. In this event the script calculates its own path and extracts and uses this disk letter. Unfortunately there is a bug that produces an incorrect drive letter. | '''Problem:''' In vary rare situations the environment variable “Disk” is not passed to PHP. In this event the script calculates its own path and extracts and uses this disk letter. Unfortunately there is a bug that produces an incorrect drive letter. | ||
'''Solution:''' | Unfortunately my original fix introduced a problem when installing Uniform Server as a service. The following fixes both problems: | ||
'''Solution:''' | |||
{| cellpadding="2" cellspacing="1" style="background:#000000;" | {| cellpadding="2" cellspacing="1" style="background:#000000;" | ||
|- style="background:#e8e8e8;" | |- style="background:#e8e8e8;" | ||
! | ! Replace this section of code (around line 26): | ||
|- style="background:#f5f5f5;" | |- style="background:#f5f5f5;" | ||
| $drive="$pathArray[0]/$pathArray[1]"; | | | ||
|}<br> | <pre style="border:0"> | ||
$drive = $_ENV['Disk'] . ":"; | |||
if($drive == ":"){ | |||
$path = realpath(dirname($_SERVER['config.inc.php'])); | |||
$pathArray = explode("\\",$path); | |||
$drive="$pathArray[0]/$pathArray[1]"; | |||
} | |||
</pre> | |||
|} | |||
<br> | |||
{| cellpadding="2" cellspacing="1" style="background:#000000;" | {| cellpadding="2" cellspacing="1" style="background:#000000;" | ||
|- style="background:#e8e8e8;" | |- style="background:#e8e8e8;" | ||
! | ! With this version: | ||
|- style="background:#f5f5f5;" | |- style="background:#f5f5f5;" | ||
| $drive="$pathArray[0]"; | | | ||
<pre style="border:0"> | |||
$drive = $_ENV['Disk'] . ":"; | |||
if($drive == ":"){ | |||
$path = realpath(dirname($_SERVER['config.inc.php'])); | |||
$pathArray = explode("\\home",$path); | |||
$drive="$pathArray[0]"; //drive letter and any sub-folders | |||
$drive=str_replace("\\","/",$drive); //change backslash to forward slash | |||
} | |||
</pre> | |||
|} | |||
It splits the path at the "home" folder boundary hence the drive will include all sub-folders. | |||
== Download == | == Download == | ||
Download this file [http://wiki.uniformserver.com/exeload/bugs35apollo/config.inc.php.txt config.inc.php.txt] save it as '''config.inc.phps''' copy to folder *\Uniform Server\udrive\home\admin\www\includes. | |||
== Forum reference == | == Forum reference == | ||
Line 51: | Line 53: | ||
[http://forum.uniformserver.com/index.php?showtopic=1400&hl=config\.inc\.php Forum reference 1] | [http://forum.uniformserver.com/index.php?showtopic=1400&hl=config\.inc\.php Forum reference 1] | ||
[http://forum.uniformserver.com/index.php?showtopic=289&hl=only+bug Forum reference | [http://forum.uniformserver.com/index.php?showtopic=289&hl=only+bug Forum reference 2] | ||
== Proposed solution == | == Proposed solution == | ||
Line 63: | Line 65: | ||
| [[Image:uc_small_logo.gif]] || [[User:Ric|Ric]] | | [[Image:uc_small_logo.gif]] || [[User:Ric|Ric]] | ||
|} | |} | ||
[[Category: UniCenter]] | [[Category: UniCenter]] |
Revision as of 14:21, 29 June 2008
Uniform Server 3.5-Apollo known bugs or issues. |
config.inc.php
Bug fix corrects drive letter
File: config.inc.php Location: *\Uniform Server\udrive\home\admin\www\includes
Problem: In vary rare situations the environment variable “Disk” is not passed to PHP. In this event the script calculates its own path and extracts and uses this disk letter. Unfortunately there is a bug that produces an incorrect drive letter.
Unfortunately my original fix introduced a problem when installing Uniform Server as a service. The following fixes both problems:
Solution:
Replace this section of code (around line 26): |
---|
$drive = $_ENV['Disk'] . ":"; if($drive == ":"){ $path = realpath(dirname($_SERVER['config.inc.php'])); $pathArray = explode("\\",$path); $drive="$pathArray[0]/$pathArray[1]"; } |
With this version: |
---|
$drive = $_ENV['Disk'] . ":"; if($drive == ":"){ $path = realpath(dirname($_SERVER['config.inc.php'])); $pathArray = explode("\\home",$path); $drive="$pathArray[0]"; //drive letter and any sub-folders $drive=str_replace("\\","/",$drive); //change backslash to forward slash } |
It splits the path at the "home" folder boundary hence the drive will include all sub-folders.
Download
Download this file config.inc.php.txt save it as config.inc.phps copy to folder *\Uniform Server\udrive\home\admin\www\includes.
Forum reference
Additional information or background can be found on these forum pages.
Proposed solution
See above.
Ric |