Zend项目公共名称在url中

时间:2012-06-18 17:16:38

标签: zend-framework

您好我已经完成了一个适用于localhost的zend项目。现在我想把它放在服务器网上...我没有权限创建一个虚拟主机所以我可以使用的是.htaccess。我在这样的根上有一个htaccess

RewriteEngine On
RewriteRule !^public/ /public%{REQUEST_URI} [L,R=301]

公用文件夹上的htaccess

SetEnv APPLICATION_ENV production
RewriteEngine On
RewriteBase /public
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

但是当我看到远程页面的网址是www.domain.it/public/controlle/action?

如何删除网址上的公开信息?

1 个答案:

答案 0 :(得分:4)

删除公用文件夹,将.htaccessindex.php文件放入public_html文件夹或等效文件夹中。 Zend Framework中的public目录只是一个占位符,无论您的实际公共Web目录是什么。

使用标准的Zend Framework .htaccess文件。你不需要任何花哨的重写规则。

您可以将ZF应用程序文件从public_html文件夹或其他任何位置放置一级。如果您没有将它们从公共场所提升一级,请务必更改index.php中的APPLICATION_PATH以反映正确的位置。