views:

29

answers:

2

I'm trying to deploy an PHP application which is written with Zend Framework to a shared cPanel server.

There are not many tutorials available on this area online, however, I followed several of them. It is successful to run the test page which proves the zend framework is installed correctly.

However, since cPanel server has a default root directory called public_html/, it is impossible to simply rename it to the Zend Server's default public/.

As a result, I had two options in mind: (Say the project name is AAA) 1) upload my projects under the /public_html/ directory, then the project will be like /public_html/AAA/public, and etc. However, this one simply fails to work. My thought would be something wrong here with the baseUrl setting, however, no matter I comment ( which is to remove the baseUrl) or set to the root page, ( in this case /public_html/AAA) both failed.

2) I tried to follow the way listed in this article: http://blog.motane.lu/2009/11/24/zend-framework-and-web-hosting-services/. Still failed.

Can anyone suggest how to do it? Really appreciate your help!

+1  A: 

Just symlink it:

ln -s public public_html

then this structure will work:

htdocs/
  myvhost.com/
    public/
    application/
    library/
    public_html # this is actually a symlink pointing to public

Whatever you do, dont just throw everything in the publicly accessible area... its just bad form :-)

prodigitalson
A: 

I don't think ZF cares what you name your "public" directory. It's just the convention that's typically used.

I can't think of any ZF component or common use case where anything explicitly points at "public/...".

A project structure like this should work:

myproject/
    application/
    library/
    public_html/ # this used to be public until you renamed it.
timdev
This should work too. Unless youre relying on Zend_Tool for things. Then you may need to manually change the manifest or whatever they call it...
prodigitalson