Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Problem with Zend_Validate_Hostname_Com file or class
 
Sean Denster
Jr. Member
 
Total Posts:  7
Joined:  2009-05-23
 

Everything’s uploaded, permissions have been set but when I want to go form the Localization step to the Configuration step I get this error of about 30 lines, this is the first line:

File “Zend/Validate/Hostname/Com.php” does not exist or class “Zend_Validate_Hostname_Com” was not found in the file

 
Magento Community Magento Community
Magento Community
Magento Community
 
Sean Denster
Jr. Member
 
Total Posts:  7
Joined:  2009-05-23
 

I think I’m just going to install the previous version of Magento smile

 
Magento Community Magento Community
Magento Community
Magento Community
 
Sean Denster
Jr. Member
 
Total Posts:  7
Joined:  2009-05-23
 

Tried installing 1.1.3, same error. Here’s the full error message:

File "Zend/Validate/Hostname/Com.php" does not exist or class "Zend_Validate_Hostname_Com" was not found in the file
Trace
:
#0 /home/mysite/public_html/lib/Zend/Validate/Hostname.php(328): Zend_Loader::loadClass('Zend_Validate_H...')
#1 /home/mysite/public_html/lib/Zend/Uri/Http.php(448): Zend_Validate_Hostname->isValid('mysite.com')
#2 /home/mysite/public_html/lib/Zend/Uri/Http.php(280): Zend_Uri_Http->validateHost()
#3 /home/mysite/public_html/lib/Zend/Uri/Http.php(154): Zend_Uri_Http->valid()
#4 /home/mysite/public_html/lib/Zend/Uri.php(132): Zend_Uri_Http->__construct('http', '//mysite.com/')
#5 /home/mysite/public_html/app/code/core/Mage/Install/Model/Installer/Config.php(107): Zend_Uri::factory('http://mysite....')
#6 /home/mysite/public_html/app/code/core/Mage/Install/Block/Config.php(61): Mage_Install_Model_Installer_Config->getFormData()
#7 /home/mysite/public_html/app/design/install/default/default/template/install/config.phtml(47): Mage_Install_Block_Config->getFormData()
#8 /home/mysite/public_html/app/code/core/Mage/Core/Block/Template.php(144): include('/home/mysite/...')
#9 /home/mysite/public_html/app/code/core/Mage/Core/Block/Template.php(176): Mage_Core_Block_Template->fetchView('install/default...')
#10 /home/mysite/public_html/app/code/core/Mage/Core/Block/Template.php(193): Mage_Core_Block_Template->renderView()
#11 /home/mysite/public_html/app/code/core/Mage/Core/Block/Abstract.php(643): Mage_Core_Block_Template->_toHtml()
#12 /home/mysite/public_html/app/code/core/Mage/Core/Block/Text/List.php(43): Mage_Core_Block_Abstract->toHtml()
#13 /home/mysite/public_html/app/code/core/Mage/Core/Block/Abstract.php(643): Mage_Core_Block_Text_List->_toHtml()
#14 /home/mysite/public_html/app/code/core/Mage/Core/Block/Abstract.php(503): Mage_Core_Block_Abstract->toHtml()
#15 /home/mysite/public_html/app/code/core/Mage/Core/Block/Abstract.php(454): Mage_Core_Block_Abstract->_getChildHtml('content', true)
#16 /home/mysite/public_html/app/design/install/default/default/template/page.phtml(94): Mage_Core_Block_Abstract->getChildHtml('content')
#17 /home/mysite/public_html/app/code/core/Mage/Core/Block/Template.php(144): include('/home/mysite/...')
#18 /home/mysite/public_html/app/code/core/Mage/Core/Block/Template.php(176): Mage_Core_Block_Template->fetchView('install/default...')
#19 /home/mysite/public_html/app/code/core/Mage/Core/Block/Template.php(193): Mage_Core_Block_Template->renderView()
#20 /home/mysite/public_html/app/code/core/Mage/Core/Block/Abstract.php(643): Mage_Core_Block_Template->_toHtml()
#21 /home/mysite/public_html/app/code/core/Mage/Core/Model/Layout.php(526): Mage_Core_Block_Abstract->toHtml()
#22 /home/mysite/public_html/app/code/core/Mage/Core/Controller/Varien/Action.php(339): Mage_Core_Model_Layout->getOutput()
#23 /home/mysite/public_html/app/code/core/Mage/Install/controllers/WizardController.php(296): Mage_Core_Controller_Varien_Action->renderLayout()
#24 /home/mysite/public_html/app/code/core/Mage/Core/Controller/Varien/Action.php(367): Mage_Install_WizardController->configAction()
#25 /home/mysite/public_html/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(247): Mage_Core_Controller_Varien_Action->dispatch('config')
#26 /home/mysite/public_html/app/code/core/Mage/Core/Controller/Varien/Front.php(158): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#27 /home/mysite/public_html/app/Mage.php(457): Mage_Core_Controller_Varien_Front->dispatch()
#28 /home/mysite/public_html/index.php(52): Mage::run()
#29 {main}

Did the system compatibility test and everything seems to be working fine.

 
Magento Community Magento Community
Magento Community
Magento Community
 
Sean Denster
Jr. Member
 
Total Posts:  7
Joined:  2009-05-23
 

The Com.php file is indeed not in my directory but I have no idea why it isn’t :S

 
Magento Community Magento Community
Magento Community
Magento Community
 
ckosny
Guru
 
Total Posts:  349
Joined:  2009-02-28
Luxembourg
 

afaik it does not exist - check the documentation for the zend framework (http://framework.zend.com/manual/en/zend.validate.set.html#zend.validate.set.hostname).
I tried to track your error down (to much time while watching telly), but could not find anything.

Can you try whether the same happens if you use another url as base url? If the installation goes through with this you should be able to change the base url in the database (table core_config_data). You might need to empty the magento cache before trying the new url though.

Good luck

Claudia

 
Magento Community Magento Community
Magento Community
Magento Community
 
Sean Denster
Jr. Member
 
Total Posts:  7
Joined:  2009-05-23
 

Thanks for looking into it Claudia smile I’m not that good with this type of stuff.

So I tried accessing the installer using the server’s IP and used some other URL methods to try to reach it but it didn’t work. Maybe my host will be able to help me out?

 
Magento Community Magento Community
Magento Community
Magento Community
 
ckosny
Guru
 
Total Posts:  349
Joined:  2009-02-28
Luxembourg
 

Hmm, I have to admit that up to now I assumed that the error happened after setting the base url - obviously I did not read your first post as thorough as I should…

The problem seems to lie deep in the Zend framework although I still don’t have a clue why this could happen.
Tracing down the code the line 326 in the file \lib\Zend\Validate\Hostname.php

if (Zend_Loader::isReadable($classFile)) {
should prevent the Zend/Validate/Hostname/Com.php file from loading, but it looks like this does not happen on your installation.

Although it would be interesting to find out what exactly is going on it, try the following to circumvent the problem:
Go to the folder \lib\Zend\Validate\Hostname where you will find a file ‘De.php’.
Copy this file and rename it to ‘Com.php’.
Then open the file and change the class name to ‘Zend_Validate_Hostname_Com’.
Save the file and then try the installation again.

This should get you over this error.
But please note that even if the above should work, you still might encounter other errors as obviously something is not correct on your system.

Btw: Do you have some other stuff on this server, e.g.another (older) zend framework?

Good luck

Claudia

 
Magento Community Magento Community
Magento Community
Magento Community
 
Sean Denster
Jr. Member
 
Total Posts:  7
Joined:  2009-05-23
 

Woohoow it works now! smile Just copying the De.php file and changing the class name did the trick. Thanks Claudia, you’re the best ^^

 
Magento Community Magento Community
Magento Community
Magento Community
 
SwiftCol
Sr. Member
 
Total Posts:  85
Joined:  2008-05-22
 

Another developer and I spent a total of 10 hours trying to figure out why the Magento installation failed, and why (on another installation) checkout errored when it tried to validate an email address. After pulling our hair out for hours we eventually figured out that Zend Optimizer’s cache of app/code/core/Mage/Core/functions.php was the problem. After adding a carriage return to force Zend Optimizer to refresh the cache on that file, the problem went away. This was the case with two different copies of Magento, and two different servers running Zend Optimizer.

I hope this helps someone else avoid hours of painful tedious work.

 
Magento Community Magento Community
Magento Community
Magento Community
 
AndyCAus
Jr. Member
 
Total Posts:  4
Joined:  2009-04-07
 

Hi SwiftCol,
Thanks for the post.  We seem to be seeing the same (or similar) issue with hostname… The PHP log has the following error:

Fatal error:  Function __autoload(b514i6_xp_2pia3m5o191rxqn3) threw an exception of type ‘Exception’ in /var/www/html/SITE/lib/Zend/Validate/Hostname.php on line 420

Every time we try to submit a page that validates an email address, we’re gett an HTTP 500 Internal Server error.

We’re running the latest Zend Server CE (with Optimizer etc)..

Is this issue likely to be the same one you’ve seen? (If so, what specifically did you mean by “add a carriage return”???

Thanks in advance for any help afforded to a newbie smile

Cheers
Andy

 
Magento Community Magento Community
Magento Community
Magento Community
 
ticean
Jr. Member
 
Total Posts:  3
Joined:  2009-08-27
 

Using Zend Server?  The root of the problem is that Zend server appends its own libraries into the PHP include path, which are not the same version as the Zend library included with Magento.

Zend Server’s lib comes first in the path, since its defined in the php.ini. Magento code modifies the path at runtime.  Thus Zend Server’s libraries are used first and discrepencies occur.  Aka: Installation explodes!

To resolve the issue:
Dump Zend Server, or edit ‘/usr/local/zend/etc/php.ini’. (ZS include path on Linux) Find the include_path definitions and remove the reference to the Zend lib.

Change: The path may be slightly different. I’ve already overwritten mine so I’m trying to remember the default. smile

include_path=".:/usr/local/zend/share/ZendFramework/library:/some/other/paths"

to:

include_path=".:/some/other/paths"

Special thanks to Lindy @ Varien for helping us figure this out.

As of note:
This is particularly ugly, because it occurs when the hostname doesn’t pass Magento’s validation.  I just spent quite a while tracing a failed checkout AJAX back to this issue.  Strange that the original developer was able to install (on the same environment) without encountering this problem, most likely because of DNS resolution differences internal/external to our domain.

 
Magento Community Magento Community
Magento Community
Magento Community
 
babyface
Jr. Member
 
Total Posts:  4
Joined:  2008-12-17
 

Thank you mpgjunky! Great work!

 
Magento Community Magento Community
Magento Community
Magento Community
 
overc
Jr. Member
 
Total Posts:  1
Joined:  2009-03-28
 
ckosny - 26 May 2009 11:46 AM

Hmm, I have to admit that up to now I assumed that the error happened after setting the base url - obviously I did not read your first post as thorough as I should…

The problem seems to lie deep in the Zend framework although I still don’t have a clue why this could happen.
Tracing down the code the line 326 in the file \lib\Zend\Validate\Hostname.php

if (Zend_Loader::isReadable($classFile)) {
should prevent the Zend/Validate/Hostname/Com.php file from loading, but it looks like this does not happen on your installation.

Although it would be interesting to find out what exactly is going on it, try the following to circumvent the problem:
Go to the folder \lib\Zend\Validate\Hostname where you will find a file ‘De.php’.
Copy this file and rename it to ‘Com.php’.
Then open the file and change the class name to ‘Zend_Validate_Hostname_Com’.
Save the file and then try the installation again.

This should get you over this error.
But please note that even if the above should work, you still might encounter other errors as obviously something is not correct on your system.

Btw: Do you have some other stuff on this server, e.g.another (older) zend framework?

Good luck

Claudia

Claudia, you rock .... everything working up to par.

 
Magento Community Magento Community
Magento Community
Magento Community
 
DevMonk
Jr. Member
 
Total Posts:  1
Joined:  2011-06-19
 

If you’re still stuck with an old version of Magento change the Zend_Validate_Hostname class at line 329 (mentioned above also) from this:

$labelChars .= @call_user_func(array($className'getCharacters'));

to this:

$labelChars2 = @call_user_func(array($className'getCharacters'));
$labelChars .= $labelChars2 $labelChars2 '';

This is better then creating a new class for .COM because it also solves problems with other TLDs.

 
Magento Community Magento Community
Magento Community
Magento Community
 
g_stefano
Jr. Member
 
Total Posts:  3
Joined:  2013-03-05
 

Hi, i’m developing in ubuntu server saucy salamander with magento 1.7 and i have develop my own extension that get datas from another server throw link like http://nomeutente:password@domain.it/parameter=param_name.
when I worked in local, everything went well, but when i have moved magento on my server i recived this error:

ERR (3): Warning: include(COM.php): failed to open stream: No such file or directory in lib/Varien/Autoload.php on line 93
ERR (3): Warning: include(): Failed opening ‘COM.php’ for inclusion (include_path=’app/code/local:/app/code/community:/app/code/core:lib:.:/usr/share/php:/usr/share/pear’) in lib/Varien/Autoload.php on line 93

I’m going crazy, because i don’t know where is the problem and how can i resole it.

please help me.
Thanks

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top