views:

148

answers:

4

i am new to zendframework i try to run the sample quickstart if i give the url without /pubilc it dosn't work but if i add the /public i get the frist html page when i send the from to get the next page i get error The requested URL /QuickStart/public/extract was not found on this server. please how do i start whihout the public in the url

A: 

There isn't enough detail to say for sure, but it looks like you put the "public" folder in your web root.

ZF needs only the files from the public folder inside the web root, while the rest are placed outside - higher up in the folder structure.

YiSh
+1  A: 

Your document root configuration, probably in Apache, should end ..../QuickStart/public/ and inside that directory are the .htaccess and index.php files.

Alister Bulman
A: 

The quickstart is written assuming that you set up an Apache Virtual host which points to the public/ directory.

If you can't do that, then try my tutorial: http://akrabat.com/zend-framework-tutorial which doesn't make that assumption.

In all cases, it is very important that you have mod_rewrite enabled for your Apache server along with AllowOveride All, so that .htaccess files work.

Rob Allen
A: 

You need to set your document root to public/ directory.

If you are on a shared server that might not be possible. In that case, use the following .htaccess file from Lorenzo Alberton:

Here it is:

RewriteEngine On

RewriteRule ^\.htaccess$ - [F]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

Pu it inside your document root.