我们可以在 Zend 框架 1.11 和 Wamp 服务器中为模块创建虚拟主机吗?


Could we create Virtual host for modules in Zend framework1.11 and Wamp server

首先感谢您阅读我的问题:

我在Zend框架1.11中创建了一个模块

模块名称 = 客户端

现在根据我们的要求,我们需要在 wamp 服务器上创建虚拟主机。

a) http://client.com

以下是我在 C:''wamp''bin''apache''Apache2.4.4''conf''extra/httpd-vhosts.conf 中完成的设置。

<VirtualHost *:80>
ServerAdmin client.com
DocumentRoot "C:/wamp/www/loyality/application/modules/client/"
ServerName client.com
ServerAlias www.client.com
ErrorLog "logs/dummy-host.example.com-error.log"
CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

之后启用 C:''Windows''System32''drivers''etc/hosts 下的窗口主机文件

但是我收到错误500内部服务器错误

在错误日志中,我发现了以下错误:

[Fri Jan 02 12:47:12.154296 2015] [core:error] [pid 4324:tid 1600] [client 127.0.0.1:50923] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

请建议,如何在 zend 框架中为模块制作虚拟主机

我们可以通过以下设置解决此问题:

在这里,我使用的是Wamp服务器,Zend框架。

步骤1:首先我们需要在apache文件中启用Include conf/extra/httpd-vhosts.conf行 httpd.conf

例如:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

第 2 步:我们需要在 bin''apache''Apache2.4.4''conf''extra''httpd-vhosts.conf 中存在的httpd-vhosts.conf文件中定义虚拟主机

例如:我们可以像下面的代码一样定义虚拟主机。

<VirtualHost *:80>
DocumentRoot "C:/wamp/www/loyality/public/"
ServerName pizzahut.com 
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "C:/wamp/www/loyality/public/"
ServerName dominos.com 
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "C:/wamp/www/loyality/public/"
ServerName client.com 
</VirtualHost>

步骤3:现在我们需要将IP地址映射到不同的主机名例如:

127.0.0.1      localhost
127.0.0.1      pizzahut.com
127.0.0.1      www.pizzahut.com
127.0.0.1      localhost
127.0.0.1      dominos.com
127.0.0.1      www.dominos.com
127.0.0.1      localhost
127.0.0.1      client.com
127.0.0.1      www.client.com

步骤 4:在公用文件夹中存在的索引.php文件中为默认模块定义或添加常量。

例如:

defined('DEFAULT_MODULE') || define('DEFAULT_MODULE', "dominos");

步骤5:使用以下代码在应用程序.ini文件中启用默认模块。

resources.frontController.prefixDefaultModule = true
resources.frontController.defaultModule = DEFAULT_MODULE

通过上述步骤,我找到了这个问题的解决方案。

现在我们的默认模块是多米诺骨牌,当我运行 http://www.dominos.com 时,我的多米诺骨牌模块指向。

谢谢阳光明媚的帕蒂亚尔。