Steam profiles images and game server information won't load

My website url is http://www.l4d2enhancedvanillastats.com/ranking/.

My site simply displays players’ activity and stats of my gameserver that are saved in a database. The site shows the stats as it should, however steam profile images of players don’t load.

And also, the site fails to get the name of the current map and player countdown in the gameserver section.

Is there a problem with taking data from another source since I am using the free hosting?

The php files are all set up correctly.

This is what I get when I try to access your site.

Please note that using illegal / stolen / pirated versions of software / mods is not allowed prior to the ToS.

You should either remove the software or buy a license for it.

3 Likes

Wrong, there is no license to buy, and there is nothing illegal about this. L4D2 Player Statistics was released in alliedmodders site for everybody to install, you can find it here :

https://forums.alliedmods.net/showpost.php?p=2678290&postcount=1894

It’s free code released for everybody to use in a site for modders. The only thing he asked for was that I’d keep the lines where it says that plugin was made by him etc…, which in fact I did,

You can even find him thanking me(my username there is Alex101192) for not removing copyright here https://forums.alliedmods.net/showthread.php?t=115965&page=192 while I was asking for help about some problems I had on another hosting site.

I am not sure why this illegal message is there and how you even got to it, but this is free code. It can’t be bought and was released for all who want to use it.

I am actually in contact with the creator of the code and he said he made some changes on his root server which led to the abuse page located inside the header.php to pop up. In fact this page with abuse was not there this morning and the other days too. The software is free as you can see in alliedmodders. So I’d be happy if my site got put back on. Thank you.

I went to other sites who are also using the same code from this guy and they also have this problem with error, https://b4st4rds.clanservers.com/stats/

Ok I removed the illegal message in header.php as the author of the code told me to. Now site is just working as it should. Now I’d like to know why profile images aren’t loading for players and why site isn’t getting values for playercount and current map of gameserver.

When I check the Network tab in my browser, I see URLs like this one respond with a status code 500. That usually means the code is crashing:

http://www.l4d2enhancedvanillastats.com/_source/js/xmlproxy.php?id=STEAM_1%3A1%3A62187767&lang=english

See this article for pointers on how to get started with fixing these:

3 Likes

I talked with the author and he told me that https://github.com/ata4/steamprofile is the code that actually takes care of taking the steam profile pictures. This code uses the requirements listed below to work. So one of these is probably disabled and should be enabled. The author suggested me that it should be a php module that needs to be enabled on php.ini. Here here all the requirements needed for the code to work that need to be enabled.

Server Requirements

  • Any PHP-compliant webserver (tested with Apache/2.2.11)
  • PHP 5.0.0 or higher, 5.2.x recommended (tested with PHP/5.2.6-3ubuntu4.2)

Required PHP extensions

  • SteamProfile Ajax
  • cURL (libcurl 7.x)
  • SteamProfile Image
  • cURL (libcurl 7.x)
  • GD2 (libgd 2.0.x)

I hope this is not true. PHP 5.2 is ancient, and anyone recommending this version nowadays is recommending people to open their server to hacking. We run PHP 7.3 by default, but you can downgrade it down to PHP 5.4. Maybe that will solve the issue.

cURL and GD are installed. However, I’ve never heard of any PHP extension for SteamProfile. As far as I can tell from the GitHub project you linked to, SteamProfile is just some PHP code, not an actual PHP extension. But you may want to double check that with the script author.

In any case, our servers meet the minimum requirements.


Can you please follow the instructions from the article I linked to to investigate this issue? Having an error message to tell us what broke helps a lot more than knowing that something broke and just throwing stuff at the wall hoping it will the issue.

2 Likes

I tried to do it in the control panel but for some reason, I am not able to access it as of right, gives connection timed out error.

So I manually put the code at scripts start, in the file where the author told me to put, as said in the article.

Nevermind panel works now, so I also went to php settings and set errors to on.

So did you find out why steam profile images and gameserver status are not showing up?

I just checked php.info and I found that inside disable_functions directive there is a lot of socket entries. The author said that socket is needed for these things(steam profile images and gameserver status) to work. By the looks of it, it seems like sockets are all disabled since it’s inside disable_functions. So could you enable socket?

Yes, I did. It’s because your code is crashing, like I already told you multiple times.

I’m sorry, but I don’t think the script author fully understands what these functions are for.

The socket_* functions are used to open custom ports to listen to connections from external tools. I can’t think of any (legitimate) application for these functions on a web hosting account. And I’m quite certain that a Steam connector doesn’t need these functions either. The curl_* functions and fsockopen and related functions are typically used to connect to external services, which are both available on our hosting.


So, for the third time:

CAN YOU PLEASE FOLLOW MY INSTRUCTIONS TO DEBUG THE ISSUE?

I’m very sure we’re going to be going on for a long time here if you just keep naming random things as to why this could possibly be a hosting issue. This may not be a hosting issue. Judging by the very unlikely systems requirements given by the script author, I think it’s more likely that this is an error in the code.

3 Likes

The same code is running perfectly on 4 other sites and I actually also ran this same exactly piece of code in other hosting sites in which images worked just fine.

This is a problem in your end and since you refuse to acknowneldge this, I will just move to a more professional hosting site that realizes when there is something wrong with the system.

It’s a shame because the site here worked well and I also considered buying premium after I would be done with these issues.

Too bad you are too lazy to change some zeros to ones and don’t want to acknowneldge the truth. The hosting here is good, but support really needs to change.

Have a good day.

That may well be. But you saying “but it works fine elsewhere” doesn’t exactly provide strong, verifiable evidence. Neither does some blatantly incorrect data from the script developer. An error message from your code indicating why it’s crashing might provide such evidence. And that’s exactly what I’m trying to direct you towards.

I’m trying to help you to prove yourself right and me wrong! So put me in my place and show me the error message which indicates that our hosting is indeed broken!

I actually had a hunch about this earlier today. We do block access to APIs from some social services because they tend to be abused for spam bots. I’m not entirely sure, but it’s possible that the Steam Community API is also blocked.

If that’s the case, our system is working exactly as we intended. Even if that intended behavior breaks your code.

But without an error message indicating the connection to the API is failing and why it’s failing, I don’t know for sure. So again, please follow my debugging instructions.

OK, so what would you like me to do instead? Snap my fingers and fix your website? I just snapped my fingers, did it work?

If it doesn’t, we’ll need to try something else. And I would like to suggest, again, to dig into the issue and find out what’s actually breaking, so we - together - can try to fix it.

3 Likes

Well yeah it’s totally possible that your servers block steam API access but here’s the thing. I actually followed the article you sent last time, the http one, and I enabled error logs through php panel as written. Now I don’t know if I have to send errors someway cause you did not say anything afterwards.

After I told you I had done this, instead of guiding me into the next step(if there is one) or just visualizing the sent data, you entirely focused on the socket part I wrote, which can be wrong of course, but you totally ignored the fact that I actually had done the steps you told me to follow in the article you linked me.

Like I said, this hosting service is pretty good, and I actually think it’s one of the best and it also doesn’t put annoying tags like other hosting sites like webhost do.

But I have work to do and stuff, I can’t waste 1 month just to get these problems resolved. So as of right now, my dns settings no longer have your nameservers and instead I put new ones to try a new hosting site.

But I will give you another shot cause I like the service overall. Now I have already put back your nameservers so my site should be up shortly.

I followed this https://infinityfree.net/support/http-error-500/ article here that you linked me before and done what was wrote. What should I do now? Where can I see these errors logs and how can I send them to you?

By the way I just read this article here. https://infinityfree.net/support/can-i-use-sockets/
It says that sockets are allowed for free accounts but are limited. It also says that more specialized ports like gameserver ports are not available. So basically I have to go pro for things to work? Or am I wrong?

If you do have an error message and would like people to help figure out what it means, then please do share the error messages here.

Seeing how the errors are only generated by some embedded pages, you’ll find have to identify the broken URLs first. You can do this by inspecting the Network and Console tabs in your browser’s developer console and seeing which URLs are broken.

For your website specifically, I see that this URL is broken: http://www.l4d2enhancedvanillastats.com/_source/js/xmlproxy.php?id=STEAM_1%3A0%3A79832157&lang=english

After that, you can enable display_errors for the website through your control panel. I see you already did that, because when I open that URL, I see the following error message:

Fatal error: Uncaught Error: Class 'XMLError' not found in /home/vol14_6/epizy.com/epiz_25002521/l4d2enhancedvanillastats.com/htdocs/_source/js/lib/steamprofile/ajax/SteamProfileXMLProxyApp.php:104
Stack trace:
#0 /home/vol14_6/epizy.com/epiz_25002521/l4d2enhancedvanillastats.com/htdocs/_source/js/xmlproxy.php(40): SteamProfileXMLProxyApp->run()
#1 {main}
  thrown in /home/vol14_6/epizy.com/epiz_25002521/l4d2enhancedvanillastats.com/htdocs/_source/js/lib/steamprofile/ajax/SteamProfileXMLProxyApp.php on line 104

This specific issue appears to be a crash in the error handling. Looking at the source code, it looks like the error is generated by this code:

Note that the link above does not point to the latest version of this file. It appears that there was an update to this code in 2014 which also had something to do with XML errors. So if you’re looking for ways to address this issue, making sure you run the latest version of the steamprofile library is a good place to start.

Fixing this issue might not fix your website entirely. After all, this is a crash in the error handling code. Fixing this issue fixes the error handling, but not whatever is triggering the error handling in the first place. But fixing this issue will help us get closer.

2 Likes

I have just updated steam library with the latest versions. Now if you go the link http://www.l4d2enhancedvanillastats.com/_source/js/xmlproxy.php?id=STEAM_1%3A0%3A79832157&lang=english
or even if you just go where the images are supposed to be, it will say Server error: 403 Forbidden