大佬教程收集整理的这篇文章主要介绍了PHP-Zend MVC-摆脱公用文件夹,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
所有,
我的PHP Zend MVC应用程序结构如下:
billingsystem
-application
-design
-public
--index.PHP
--.htaccess
-library
-- Zend
每当应用程序加载时,它将转到公用文件夹中的index.PHP,并从那里重新路由..我想确保用户通过转到http://billingsystem/而不是转到http://billingsystem/public来访问系统.这是保持公开状态的Zend约定吗?夹.还是可以摆脱它并将文件移动到根目录?我尝试这样做,但是我的应用程序惨败,因为它无法找到Zend库并加载它的类.我的一些index.PHP代码如下:
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
// Ensure include/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../include'),
get_include_path(),
)));
// Ensure application/models is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../application/models'),
get_include_path(),
)));
/** Zend_Application */
require_once 'Zend/Application.PHP';
require_once 'Zend/Loader.PHP';
//Autoload Zend Classes
Zend_Loader::loadClass('Zend_Loader_Autoloader');
Zend_Loader_Autoloader::getInstance()->setFallbackAutoloader(true);
谢谢
解决方法:
ZF假定您将主机的文档根目录设置为公用文件夹.本质上是这样,因此您可以将应用程序代码置于“公共”空间之外.如果您使用的是Apache服务器,则可以在httpd.conf(1.x)或apache2.conf(2.x)文件中修改DocumentRoot指令.您的服务器本身可以具有DocumentRoot,也可以创建每个具有DocumentRoots的虚拟主机.这是有关为您的站点设置虚拟主机的不错的教程:http://apptools.com/phptools/virtualhost.php.Zend Wiki中还有一个很好的示例:http://framework.zend.com/wiki/display/ZFDEV/Configuring%2BYour%2BURL%2BRewriter
以上是大佬教程为你收集整理的PHP-Zend MVC-摆脱公用文件夹全部内容,希望文章能够帮你解决PHP-Zend MVC-摆脱公用文件夹所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。