View Issue Details

IDProjectCategoryView StatusLast Update
0008567mantisbtinstallationpublic2007-12-20 01:35
Reportermdl Assigned Tovboctor  
PrioritynormalSeverityblockReproducibilityalways
Status closedResolutionfixed 
Platformi486OSFedoraCoreOS Version4
Product Version1.1.0rc2 
Target Version1.1.0Fixed in Version1.1.0 
Summary0008567: cannot install on shared webserver, core/*.php inconsistent use of require_once($t_core_dir)
Description

I recently installed mantis 1.1.0rc2 on a shared webserver, and the install.php page is coming up blank.

I started debugging the code and found quite a few instances in core/ files where files were included without using require_oncethe ($t_core_dir)

Example: core/email_api.php had the following line
require_once('disposable','disposable.php')
which I had to change to:
require_once( $t_core_dir . 'disposable/disposable.php' );

So, that got me further down the troubleshooting process, but then, I gave up after having changing a few other files and having performed the following audit:
cd core; find . -name "*.php" -exec grep -i -n "require_once" {}\; -print | more

Too much work, not enough time.

Thanks

Tagsblank screen

Activities

grangeway

grangeway

2007-11-11 13:16

reporter   ~0016155

Hello mdl,

I've commited a fix for the disposable/email api one you describe.

My very brief search for any require_ocne that dont lincude t_core_path, t_coredir and aren't requests from pages for core.php - I pretty much couldn't see any others we missed, although asd it's 750 lines of require's there may be others...

Even after changing email api, you still get a blank install page ?

Paul

Martin Fuchs

Martin Fuchs

2007-11-11 13:42

reporter   ~0016156

Hi mdl, what do you understand exactly by a "shared webserver"? I ask, because I also have trouble installing 1.1.0rc2 on a web server, which is used for a numer of domain names with different virtual roots. Apache crashes and reports segmentation faults in its log file. On another server there is no problem with the new version, so I suspected some PHP installation problem.
Mantis version 1.1.0a on the other side runs seamless on both servers, so may be you are describing the same problem I saw on the first server?

Martin Fuchs

Martin Fuchs

2007-11-11 15:56

reporter   ~0016163

If I understand correctly, you suspect the relative pathes in the require_once statements to be problematic. I searched for them with "cd core; grep require_once *.php | grep -v t_core" and compared the result for the version 1.1.0a with that of 1.1.0rc2. The output is identical, so this doesn't explain my problem with this one webserver having several virtual roots.

mdl

mdl

2007-11-15 04:11

reporter   ~0016209

Martin-->
For the shared webserver, I should have said a virtual host at ipowerweb.com
I suspect their PHP/apache install to be very poor (I have had problems before)

Paul -->
database_api.php has a bad inclusion at line 34:

the following line:
require_once( 'adodb/adodb.inc.php' );
should be replaced by:
require_once( $t_core_dir . '/adodb/adodb.inc.php' );

and then... it worked!!

mdl

mdl

2007-11-15 04:17

reporter   ~0016210

I thought I had performed that change before, may be I just got tired of modifying files too soon (my client was also breathing on my neck)

...

Martin Fuchs

Martin Fuchs

2007-11-24 06:05

reporter   ~0016270

Thanks for the hint. I doesn't solve my problem, so seems that's another thing.

grangeway

grangeway

2007-11-24 08:39

reporter   ~0016273

whats the php include path configuration variable set to ?

i.e. does it include . ?

Paul

vboctor

vboctor

2007-11-24 21:00

manager   ~0016282

Reminder sent to: giallu

Hi Giallu, it seems that depending on the include path and not explicitly including the full path is causing us issues. The reason adodb didn't include the full path is to use the adodb system version supplied with the linux distribution if available, otherwise, fall back to the packaged one.

The inclusion of "disposable" library was modeled after the inclusion of adodb, since it is forseen that this library will be released independent of Mantis.

We need to come up with a well defined approach for using the appropriate version of libraries like ADODB. I see this part of Mantis packaging strategy which giallu is a good person to give us feedback on. giallu is the Mantis packager for Fedora.

vboctor

vboctor

2007-11-27 22:51

manager   ~0016311

The use of $t_core_dir in the include for disposable is implemented in SVN HEAD but not 1.1.x branch. I'll port this to 1.1.x.

Is there anything else that needs to be fixed for this issue to be resolved for 1.1.0rc4?

vboctor

vboctor

2007-11-28 01:05

manager   ~0016312

Fixed by svn:4797

mdl

mdl

2007-11-29 16:23

reporter   ~0016335

Paul -> I will check the PHP include path. What a great idea, thank you. I will check it later.