[USER ERROR]VSP requires PHP Version 7.4 to 8.2

Started by Fragenstein, August 05, 2024, 01:57:22 PM

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

Fragenstein

Is this a 100% clean install with a fresh database?
Yes. I deleted everything including the database.
I created a new database and uploaded VSP v1.1.52 and the media files you posted this morning.

Can you please zip up your setup to me so I may have a look at them?
Not sure what you mean.

I am assuming you are using XAMPP with PHP 8.2.xx on windows here?
Running Windows 11 XAMPP PHP 8.2.16.

Krillin

#16
Zip up the files you are using into a compressed format and PM them to me so I may take a look at what you have because I do not have access to your console to be able to look at your setup directly. So in order to replicate your configuration, I need your files here to work with and look at to verify a few things. Please also include your game.log file within the ./ftplog/ folder so that I may look into the matter.

Do you happen to know what Database you are using in the xampp? According to XAMPP website it includes
  • PHP 8.2.12, 8.1.25 or 8.0.30
  • Apache 2.4.58
  • MariaDB 10.4.32
  • phpMyAdmin 5.2.1
  • OpenSSL 3.1.3
  • curl 8.4.0_6
  • Tomcat 8.5.96

My MariaDB is version 10.11.9.0

Because my setup is a PRODUCTION server, NOT a developer setup as XAMPP defaults to because XAMPP is a development setup. And XAMPP is WAY behind as we have 8.4.1.

I will consider bringing my PHP back to 8.3, but I cannot leap back to 8.2.26. When I went from 8.2.24 to 8.4.1 there were no issues. I am starting to think there maybe something wrong with your PHP setup.

I know with XAMPP you can install YOUR OWN PHP, MYSQL, MARIADB, PHPMYADMIN. Just download the PORTABLE versions of the modules, drop them in, and set them up for selection off the menu. That is what I used to do on my laptop.

I have updated the ReadME extensively. You may need to check out the PHP section in there and make sure your PHP configuration is setup. I am still working on that as well.

I am sorry I cannot be more help, but you are not really giving me much to go on here. I would need the files you are using, also please include your PHP.INI file so I can see if you followed the directions. I think there is something missing here. There is also a setting in the cfg-default.php
Quote from: cfg-default.cfg// Error Reporting
   
  // For Debugging. Recommended when you set up vsp for the first time.
  //error_reporting(E_ALL ^ E_NOTICE);
 
  // Recommended for regular use after ensuring proper run of vsp.
  //error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);
 
  // For Debugging. Enable this if you are having a hard time getting vsp running.
  error_reporting(E_ALL);

-Krillin
VSP™ v1.1.52 Released currently working on v1.1.53 in progress

Fragenstein


Krillin

#18
A few things here caught my attention. But there is one I am extremely offended by;

Quote from: https://krillinsworld.com/vsp/docs/License.phpYou may not:

[snip]
  • Modify or remove any copyright notices, links, or labels on the Software
    on each page and in the header/footer of each script source file.
[snip]

This was found in your /PUB/CONFIG/CFG-DEFAULT.CFG
$cfg['display']['server_title'] = <<<END_OF_SERVER_TITLE
  <a href="[LICENSE VIOLATION]"><img src="{$cfg['display']['v_hcenter_logo']}" onmouseover="this.src='{$cfg['display']['v_hchover_logo']}';" onmouseout="this.src='{$cfg['display']['v_hcenter_logo']}';" /></a>
END_OF_SERVER_TITLE;


For starters, you are going to have to restore the original cfg-default.php file. You CANNOT modify the URL for the HOME of VSP https://krillinsworld.com/vsp. Voodoo Stats Processor logo doesn't belong to you or your server please leave this section ALONE. Add another field below with your server info.

Here is what's causing your problems;
// Game settings \\
//
  $cfg['game']['name'] = "q3a"; /* ►► make sure this is set correctly! Read below! ◄◄ */

You do not have to set the following, these are to be used for Cascade Styling Sheets (.css) for websites:
// Themes ■ MAY ■ use the following variables to do special processing for a particular game,mod,type
  $cfg['game']['mod'] = "default";  // not used
  $cfg['game']['type'] = "default"; // not used
// The theme author decides how to use these variables.
// Check the documentation for the theme that you are using

Q3, back in 2004, didn't have a GUID for tracking, so you MUST track by PlayerID for the time being. This is going to be fixed in the next release along with a few other visual enhancements.
  // Default method for tracking, works with all games/mods. If unsure, use this.
  $cfg['parser']['trackID'] = 'playerName';

This needs to stay as it is. This is what will get you into trouble. But you will see how I modified it for you.
// Server info \\
//
// This server info is displayed at the top of the main VSP™ page 
  $cfg['display']['server_title'] = <<<END_OF_SERVER_TITLE
  <a href="https://krillinsworld.com/vsp"><img src="{$cfg['display']['v_hcenter_logo']}" onmouseover="this.src='{$cfg['display']['v_hchover_logo']}';" onmouseout="this.src='{$cfg['display']['v_hcenter_logo']}';" /></a>
END_OF_SERVER_TITLE;
  $cfg['display']['server_info'] = <<<END_OF_SERVER_INFO
  <table style="border-width:0;">
    <tr>
      <td style="border-width:0;padding:3px;text-align:right;color:Lavender">Website:</td>
      <td style="border-width:0;padding:3px;text-align:left;color:DarkOrange" >vsp.servegame.com</td>
    </tr>
    <tr>
      <td style="border-width:0;padding:3px;text-align:right;color:Lavender">Server IP:</td>
      <td style="border-width:0;padding:3px;text-align:left;color:DarkOrange" >vsp.servegame.com:27960</td>
    </tr>
    <tr>
      <td style="border-width:0;padding:3px;text-align:right;color:Lavender">Game:</td>
      <td style="border-width:0;padding:3px;text-align:left;color:DarkOrange">Excessive Plus 24/7</td>
    </tr>
    <tr>
      <td style="border-width:0;padding:3px;text-align:right;color:Lavender">Owner Contact:</td>
      <td style="border-width:0;padding:3px;text-align:left;color:DarkOrange">bobl1961 [at] yahoo [DOT] com</td>
    </tr>
    <tr>
      <td style="border-width:0;padding:3px;text-align:right;color:Lavender">Quote:</td>
      <td style="border-width:0;padding:3px;text-align:left;color:DarkOrange">" Frag ON! "</td>
    </tr>
  </table>
END_OF_SERVER_INFO;

This is all you have to fix above. ClearDB and rerun the logs again and you should be good to go. You did not include the log you were running. But I am confident this is your problem.
VSP™ v1.1.52 Released currently working on v1.1.53 in progress

Fragenstein

Looking much better, but still having a few issues:

Generate Awards: Generating Awards...
Award Definitions not found.
←—— pub/games/q3a/awardsets/default/default-awards.php

Warning: Trying to access array offset on value of type bool in themes\bismarck\awardstat.php on line 165

Warning: Trying to access array offset on value of type bool in themes\bismarck\awardstat.php on line 169

Warning: Attempt to read property "fields" on bool in themes\bismarck\awardstat.php on line 171

Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array,
null given in themes\bismarck\awardstat.php:171Stack trace:#0 themes\bismarck\awardstat.php(262):
drawAwardList()#1 {main}thrown in themes\bismarck\awardstat.php on line 171

Fatal error: Uncaught TypeError: ksort(): Argument #1 ($array) must be of type array,
null given in themes\bismarck\playerstat.php:447 Stack trace: #0 themes\bismarck\playerstat.php(447):
ksort(NULL) #1 themes\bismarck\playerstat.php(24): getStats() #2 {main} thrown in
themes\bismarck\playerstat.php on line 447


Krillin

#20
I am not able to replicate your issue on my end here but I do remember seeing this very error while fixing this code. But with fixing so much I for the life of me cannot remember what the fix was. This error is being thrown due to an empty dataset being returned in this case the awards table is empty. Because there isn't anything to work with, it is throwing an error. But the fatal errors have me concerned. I need to compare my test location files verses my build location files. Let me see what I find here.

There is a slight problem with the download I am currently addressing. But there is a mismatch with your files and the files in the current package with vsp-q3a.php. I ran these files and there is a "Notice" in running the stats but it generates the awards as the table shows rows. I think this is a PHP 8.4.1 issue, it should be all good with PHP 8.0 - 8.3.

Notice: Only variables should be passed by reference in E:\VSP\trouble\vsp-q3a.php on line 536
I am addressing this issue right now.

This just might be a PHP 8.4.1 issue. But if you are getting the message above. This corrects the Notice you see above but also slows the processing, so be aware.

Find line #536 in vsp-q3a.php:
$this->V21d8a920->F43781db5($this->Vae2aeb93->F26dd5333(), $this->Vae2aeb93->F068fac4f());
And replace the line with these lines #536, #537 and #538;
    $check1 = $this->Vae2aeb93->F26dd5333();
    $check2 = $this->Vae2aeb93->F068fac4f();
    $this->V21d8a920->F43781db5($check1, $check2);

And this should do it. I updated the current packages this evening. Some little tweaks from 1.1.53. I hope you like how I juggled around the cfg-default.php file.  :laugh: I am especially proud of what I put together for attempting to access the /pub/configs/cfg-default.php as well as the password.inc.php files from a browser.


-Krillin
VSP™ v1.1.52 Released currently working on v1.1.53 in progress

Fragenstein

#21
I deleted everything and uploaded the updated package from today. I'm still getting this error:

QuoteGenerate Awards: Generating Awards...
Award Definitions not found.
←—— pub/games/q3a/awardsets/default/default-awards.php


On another note, the playerExcludeList-default.inc.php does not appear to be working.
I added all the bots names (colored names included), but they keep showing up in the stats.

Krillin

Quote from: Fragenstein on December 23, 2024, 01:32:00 PMI deleted everything and uploaded the updated package from today. I'm still getting this error:

QuoteGenerate Awards: Generating Awards...
Award Definitions not found.
←—— pub/games/q3a/awardsets/default/default-awards.php


On another note, the playerExcludeList-default.inc.php does not appear to be working.
I added all the bots names (colored names included), but they keep showing up in the stats.

Okay, but all the bots for Quake are already in the playerBanList-default.inc.php as seen here
Quote from: /pub/include/playerBanList-default.inc.php$player_ban_list = [
    "^1A^2n^3a^4r^5k^6i"
    ,"Angel"
    ,"Biker"
    ,"Bitterman"
    ,"Bones"
    ,"Cadavre"
    ,"Crash"
    ,"Daemia"
    ,"Doom"
    ,"Gorre"
    ,"Grunt"
    ,"Hossman"
    ,"Hunter"
    ,"Keel"
    ,"Klesk"
    ,"Lucy"
    ,"Major"
    ,"Mynx"
    ,"Orbb"
    ,"Patriot"
    ,"Phobos"
    ,"Ranger"
    ,"Razor"
    ,"Sarge"
    ,"Slash"
    ,"Sorlag"
    ,"Stripe"
    ,"TankJr"
    ,"Uriel"
    ,"Visor"
    ,"Wrack"
    ,"Xaero"
    ,"UnnamedPlayer"
    ,"WolfPlayer"
    ,"ETPlayer"
    ,"Unknown Soldier"
  ];

How did you add them? You have to understand how PHP Arrays work and without seeing your file format I cannot guarantee it will work. Especially since they are already in one of the files.

To me it really sounds like you have a misconfigured PHP configuration. I got the same error message when I used your files, but when I replaced vsp.php and vsp-q3a.php from the build package source I did not get the Award Definitions not found. error. Which is why I believe your PHP is not configured right.
VSP™ v1.1.52 Released currently working on v1.1.53 in progress

Fragenstein

#23
Here's the file:

<?php /* vsp voodoo stats processor, copyright 2004-2025, krillinsworld AT gmail DOT com (a924cb279be8cb6089387d402288c9f2) */
  global $player_exclude_list;
 
  $player_exclude_list = [
    "^0argus^F^t+"
    ,"^3Mr.^tGauntlet"
    ,"^6L^3akerbo^6T"
    ,"^1A^2n^3a^4r^5k^6i"
    ,"Angel"
    ,"Biker"
    ,"Bitterman"
    ,"Bones"
    ,"Cadavre"
    ,"Crash"
    ,"Daemia"
    ,"Doom"
    ,"Gorre"
    ,"Grunt"
    ,"Hossman"
    ,"Hunter"
    ,"Keel"
    ,"Klesk"
    ,"Lucy"
    ,"Major"
    ,"Mynx"
    ,"Orbb"
    ,"Patriot"
    ,"Phobos"
    ,"Ranger"
    ,"Razor"
    ,"Sarge"
    ,"Slash"
    ,"Sorlag"
    ,"Stripe"
    ,"TankJr"
    ,"Uriel"
    ,"Visor"
    ,"Wrack"
    ,"Xaero"
    ,"UnnamedPlayer"
    ,"WolfPlayer"
    ,"ETPlayer"
    ,"Unknown Soldier"
  ];

What could be misconfigured in PHP?

Krillin

I am sorry to have to report. Something has come up again I am going to be unreachable until I get settled down. But as for your PHP, I had asked you to send me your PHP.INI file but it never arrived. So I will not be able to take a look at it. But if you want, I will post my PHP.INI here and you can compare them if you wish.

USE THIS WITH CAUTION
[PHP]

;;;;;;;;;;;;;;;;;;;
; About php.ini  ;
;;;;;;;;;;;;;;;;;;;
; PHP's initialization file, generally called php.ini, is responsible for
; configuring many of the aspects of PHP's behavior.
[snipped]
;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;

; Enable the PHP scripting language engine under Apache.
; https://php.net/engine
engine=On

; Default Value: On
; Development Value: Off
; Production Value: Off
; https://php.net/short-open-tag
short_open_tag = On

; The number of significant digits displayed in floating point numbers.
; https://php.net/precision
precision = 14

; Default Value: Off
; Development Value: 4096
; Production Value: 4096
; https://php.net/output-buffering
output_buffering = 4096

; https://php.net/output-handler
;output_handler =

; URL rewriter function rewrites URL on the fly by using
; output buffer. You can set target tags by this configuration.
; "form" tag is special tag. It will add hidden input tag to pass values.
; Refer to session.trans_sid_tags for usage.
; Default Value: "form="
; Development Value: "form="
; Production Value: "form="
;url_rewriter.tags

; Default Value: ""
; Development Value: ""
; Production Value: ""
;url_rewriter.hosts

; https://php.net/zlib.output-compression
zlib.output_compression = Off

; https://php.net/zlib.output-compression-level
;zlib.output_compression_level = -1

; https://php.net/zlib.output-handler
;zlib.output_handler =

; https://php.net/implicit-flush
; Note: This directive is hardcoded to On for the CLI SAPI
implicit_flush = Off

unserialize_callback_func =

;unserialize_max_depth = 4096

serialize_precision = -1

; https://php.net/open-basedir
;open_basedir =

; https://php.net/disable-functions
disable_functions =

; https://php.net/disable-classes
disable_classes =

; https://php.net/syntax-highlighting
;highlight.string  = #DD0000
;highlight.comment = #FF9900
;highlight.keyword = #007700
;highlight.default = #0000BB
;highlight.html    = #000000

; https://php.net/ignore-user-abort
;ignore_user_abort = On

; https://php.net/realpath-cache-size
;realpath_cache_size = 4096k

; https://php.net/realpath-cache-ttl
;realpath_cache_ttl = 120

; https://php.net/zend.enable-gc
zend.enable_gc = On

;zend.multibyte = Off

;zend.script_encoding =

; Default Value: Off
; Development Value: Off
; Production Value: On
zend.exception_ignore_args = Off

; Default Value: 15
; Development Value: 15
; Production Value: 0
zend.exception_string_param_max_len = 15

;;;;;;;;;;;;;;;;;
; Miscellaneous ;
;;;;;;;;;;;;;;;;;

; https://php.net/expose-php
expose_php = On

;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;

; https://php.net/max-execution-time
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 0

; Default Value: -1 (Unlimited)
; Development Value: 60 (60 seconds)
; Production Value: 60 (60 seconds)
; https://php.net/max-input-time
max_input_time = 60

; https://php.net/max-input-nesting-level
;max_input_nesting_level = 64

;max_input_vars = 1000

; Default Value: -1 (Sum of max_input_vars and max_file_uploads)
;max_multipart_body_parts = 1500

; Maximum amount of memory a script may consume
; https://php.net/memory-limit
memory_limit = 512M

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Default Value: E_ALL
; Development Value: E_ALL
; Production Value: E_ALL & ~E_DEPRECATED
; https://php.net/error-reporting
error_reporting = E_ALL

; Default Value: On
; Development Value: On
; Production Value: Off
; https://php.net/display-errors
display_errors = On

; Default Value: On
; Development Value: On
; Production Value: Off
; https://php.net/display-startup-errors
display_startup_errors = On

; Default Value: Off
; Development Value: On
; Production Value: On
; https://php.net/log-errors
log_errors = On

; https://php.net/ignore-repeated-errors
ignore_repeated_errors = Off

; https://php.net/ignore-repeated-source
ignore_repeated_source = Off

; https://php.net/report-memleaks
report_memleaks = On

;report_zend_debug = 0

; https://php.net/xmlrpc-errors
;xmlrpc_errors = 0


;xmlrpc_error_number = 0

; https://php.net/html-errors
html_errors = On

; https://php.net/docref-root
; Examples
;docref_root = "/phpmanual/"

; https://php.net/docref-ext
;docref_ext = .html

; https://php.net/error-prepend-string
; Example:
;error_prepend_string = "<span style='color: #ff0000'>"

; https://php.net/error-append-string
; Example:
;error_append_string = "</span>"

; https://php.net/error-log
; Example:
;error_log = php_errors.log
; Log errors to syslog (Event Log on Windows).
;error_log = syslog

;syslog.ident = php

;syslog.facility = user

; https://php.net/syslog.filter
;syslog.filter = ascii

;windows.show_crt_warning
; Default value: 0
; Development value: 0
; Production value: 0

;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;

; https://php.net/arg-separator.output
; Example:
;arg_separator.output = "&amp;"

; https://php.net/arg-separator.input
; Example:
;arg_separator.input = ";&"

; Default Value: "EGPCS"
; Development Value: "GPCS"
; Production Value: "GPCS";
; https://php.net/variables-order
variables_order = "GPCS"

; Default Value: None
; Development Value: "GP"
; Production Value: "GP"
; https://php.net/request-order
request_order = "GP"

; Default Value: On
; Development Value: Off
; Production Value: Off
; https://php.net/register-argc-argv
register_argc_argv = on

; https://php.net/auto-globals-jit
auto_globals_jit = On

; https://php.net/enable-post-data-reading
;enable_post_data_reading = Off

; https://php.net/post-max-size
post_max_size = 1024M

; https://php.net/auto-prepend-file
auto_prepend_file =

; https://php.net/auto-append-file
auto_append_file =

; https://php.net/default-mimetype
default_mimetype = "text/html"

; https://php.net/default-charset
default_charset = "UTF-8"

; https://php.net/internal-encoding
;internal_encoding =

; https://php.net/input-encoding
;input_encoding =

; https://php.net/output-encoding
;output_encoding =

;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;


; https://php.net/include-path
; Library for Smarty
include_path = ".;c:\Smarty\libs\"

; https://php.net/doc-root
doc_root =

; https://php.net/user-dir
user_dir =

; https://php.net/extension-dir
extension_dir = "ext"

;sys_temp_dir = "/tmp"

; https://php.net/enable-dl
enable_dl = Off

; https://php.net/cgi.force-redirect
;cgi.force_redirect = 1

;cgi.nph = 1

; https://php.net/cgi.redirect-status-env
;cgi.redirect_status_env =

; https://php.net/cgi.fix-pathinfo
;cgi.fix_pathinfo=1

;cgi.discard_path=1

; https://php.net/fastcgi.impersonate
;fastcgi.impersonate = 1

;fastcgi.logging = 0

; Default is zero.
; https://php.net/cgi.rfc2616-headers
;cgi.rfc2616_headers = 0

; https://php.net/cgi.check-shebang-line
;cgi.check_shebang_line=1

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; https://php.net/file-uploads
file_uploads = On

; https://php.net/upload-tmp-dir
upload_tmp_dir = "C:/PHP/tmp"

; https://php.net/upload-max-filesize
upload_max_filesize = 1024M

; Maximum number of files that can be uploaded via a single request
max_file_uploads = 20

;;;;;;;;;;;;;;;;;;
; Fopen wrappers ;
;;;;;;;;;;;;;;;;;;

; https://php.net/allow-url-fopen
allow_url_fopen = On

; https://php.net/allow-url-include
allow_url_include = Off

; https://php.net/from
;from="john@doe.com"

; https://php.net/user-agent
;user_agent="PHP"

; https://php.net/default-socket-timeout
default_socket_timeout = 60

; https://php.net/auto-detect-line-endings
;auto_detect_line_endings = Off

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

extension=bz2
extension=curl
;extension=ffi
;extension=ftp
extension=fileinfo
extension=gd
extension=gettext
;extension=gmp
extension=intl
;extension=ldap
extension=mbstring
extension=exif      ; Must be after mbstring as it depends on it
extension=mysqli
;extension=odbc
;extension=openssl
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_odbc
;extension=pdo_pgsql
extension=pdo_sqlite
;extension=pgsql
;extension=shmop

; See https://www.php.net/manual/en/snmp.installation.php
;extension=snmp

;extension=soap
;extension=sockets
;extension=sodium
;extension=sqlite3
;extension=tidy
;extension=xsl
extension=zip

zend_extension=opcache

;extension=imagick

;extension=wincache

[XDebug]
;https://xdebug.org/wizard This how you installed Xdebug in PHP
;https://xdebug.org/docs/errors Help With XDebug Errors in configuration
;zend_extension = xdebug
;xdebug.mode = debug,develop
;xdebug.discover_client_host = yes
;xdebug.log_level = 0
;xdebug.log = "%sprogdir%/userdata/temp/xdebug/log.txt"
;xdebug.start_with_request = yes
;xdebug.idekey = VSCODE

;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;
asp_tags = Off
display_startup_errors = On
track_errors = Off
y2k_compliance = On
allow_call_time_pass_reference = Off
safe_mode = Off
safe_mode_gid = Off
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = LD_LIBRARY_PATH
error_log = "C:\php\logs\php_error_log"
register_globals = Off
register_long_arrays = Off
magic_quotes_gpc = Off
magic_quotes_runtime = Off
magic_quotes_sybase = Off
extension = php_openssl.dll
extension = php_ftp.dll
wincache.fcenabled = 1

[CLI Server]

cli_server.color = On

[Date]

; https://php.net/date.timezone
date.timezone = America/New_York

; https://php.net/date.default-latitude
;date.default_latitude = 31.7667

; https://php.net/date.default-longitude
;date.default_longitude = 35.2333

; https://php.net/date.sunrise-zenith
;date.sunrise_zenith = 90.833333

; https://php.net/date.sunset-zenith
;date.sunset_zenith = 90.833333

[filter]
; https://php.net/filter.default
;filter.default = unsafe_raw

; https://php.net/filter.default-flags
;filter.default_flags =

[iconv]

;iconv.input_encoding =

;iconv.internal_encoding =

;iconv.output_encoding =

[imap]

;imap.enable_insecure_rsh=0

[intl]
;intl.default_locale =
; This directive allows you to produce PHP errors when some error
; happens within intl functions. The value is the level of the error produced.
; Default is 0, which does not produce any errors.
;intl.error_level = E_WARNING
;intl.use_exceptions = 0

[sqlite3]
; Directory pointing to SQLite3 extensions
; https://php.net/sqlite3.extension-dir
;sqlite3.extension_dir =

; https://www.sqlite.org/c3ref/c_dbconfig_defensive.html
; (for older SQLite versions, this flag has no use)
;sqlite3.defensive = 1

[Pcre]

; https://php.net/pcre.backtrack-limit
;pcre.backtrack_limit=100000

; https://php.net/pcre.recursion-limit
;pcre.recursion_limit=100000


;pcre.jit=1

[Pdo]
pdo_mysql.default_socket="MySQL"

; https://php.net/pdo-odbc.connection-pooling
;pdo_odbc.connection_pooling=strict

[Pdo_mysql]

pdo_mysql.default_socket=

[Phar]
; https://php.net/phar.readonly
;phar.readonly = On

; https://php.net/phar.require-hash
;phar.require_hash = On

;phar.cache_list =

[mail function]
; For Win32 only.
; https://php.net/smtp
SMTP = localhost
; https://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; https://php.net/sendmail-from
;sendmail_from = me@example.com

; For ?Unix? only.  You may supply arguments as well (default: "sendmail -t -i").
; https://php.net/sendmail-path
sendmail_path = C:\xampp\sendmail\sendmail.exe

;mail.force_extra_parameters =

mail.add_x_header = Off

mail.mixed_lf_and_crlf = Off

;mail.log = C:\xampp\sendmail\_sendmail-logs\
; Log mail to syslog (Event Log on Windows).
;mail.log = syslog

[ODBC]
; https://php.net/odbc.default-db
;odbc.default_db    =  Not yet implemented

; https://php.net/odbc.default-user
;odbc.default_user  =  Not yet implemented

; https://php.net/odbc.default-pw
;odbc.default_pw    =  Not yet implemented

;odbc.default_cursortype

; https://php.net/odbc.allow-persistent
odbc.allow_persistent = On

; https://php.net/odbc.check-persistent
odbc.check_persistent = On

; https://php.net/odbc.max-persistent
odbc.max_persistent = -1

; https://php.net/odbc.max-links
odbc.max_links = -1

; https://php.net/odbc.defaultlrl
odbc.defaultlrl = 4096

; https://php.net/odbc.defaultbinmode
odbc.defaultbinmode = 1

[MySQLi]

; https://php.net/mysqli.max-persistent
mysqli.max_persistent = -1

; https://php.net/mysqli.allow_local_infile
;mysqli.allow_local_infile = On

;mysqli.local_infile_directory =

; https://php.net/mysqli.allow-persistent
mysqli.allow_persistent = On

; https://php.net/mysqli.max-links
mysqli.max_links = -1

; https://php.net/mysqli.default-port
mysqli.default_port = 3306

; https://php.net/mysqli.default-socket
mysqli.default_socket =

; https://php.net/mysqli.default-host
mysqli.default_host =

; https://php.net/mysqli.default-user
mysqli.default_user =

; https://php.net/mysqli.default-pw
mysqli.default_pw =

mysqli.reconnect = Off

;mysqli.rollback_on_cached_plink = Off

[mysqlnd]

mysqlnd.collect_statistics = On

mysqlnd.collect_memory_statistics = On

; https://php.net/mysqlnd.debug
;mysqlnd.debug =

;mysqlnd.log_mask = 0

;mysqlnd.mempool_default_size = 16000

;mysqlnd.net_cmd_buffer_size = 2048

;mysqlnd.net_read_buffer_size = 32768

;mysqlnd.net_read_timeout = 31536000

;mysqlnd.sha256_server_public_key =

[PostgreSQL]

; https://php.net/pgsql.allow-persistent
pgsql.allow_persistent = On

; https://php.net/pgsql.auto-reset-persistent
pgsql.auto_reset_persistent = Off

; https://php.net/pgsql.max-persistent
pgsql.max_persistent = -1

; https://php.net/pgsql.max-links
pgsql.max_links = -1

; https://php.net/pgsql.ignore-notice
pgsql.ignore_notice = 0

; https://php.net/pgsql.log-notice
pgsql.log_notice = 0

[bcmath]

; https://php.net/bcmath.scale
bcmath.scale = 0

[browscap]
; https://php.net/browscap
;browscap="C:\xampp\php\extras\browscap.ini"

[Session]
; https://php.net/session.save-handler
session.save_handler = files

; https://php.net/session.save-path
session.save_path = "C:/PHP/tmp"

; https://wiki.php.net/rfc/strict_sessions
session.use_strict_mode = 1

; https://php.net/session.use-cookies
session.use_cookies = 1

; https://php.net/session.cookie-secure
;session.cookie_secure = 1

; https://php.net/session.use-only-cookies
session.use_only_cookies = 1

; https://php.net/session.name
session.name = PHPSESSID

; https://php.net/session.auto-start
session.auto_start = 0

; https://php.net/session.cookie-lifetime
session.cookie_lifetime = 0

; https://php.net/session.cookie-path
session.cookie_path = /

; https://php.net/session.cookie-domain
session.cookie_domain =

; https://php.net/session.cookie-httponly
session.cookie_httponly =

; https://tools.ietf.org/html/draft-west-first-party-cookies-07
session.cookie_samesite =

; https://php.net/session.serialize-handler
session.serialize_handler = php

; Default Value: 1
; Development Value: 1
; Production Value: 1
; https://php.net/session.gc-probability
session.gc_probability = 1

; Default Value: 100
; Development Value: 1000
; Production Value: 1000
; https://php.net/session.gc-divisor
session.gc_divisor = 1000

; https://php.net/session.gc-maxlifetime
session.gc_maxlifetime = 1440

; https://php.net/session.referer-check
session.referer_check =

; https://php.net/session.cache-limiter
session.cache_limiter = nocache

; https://php.net/session.cache-expire
session.cache_expire = 180

; https://php.net/session.use-trans-sid
session.use_trans_sid = 0

; Default Value: "a=href,area=href,frame=src,form="
; Development Value: "a=href,area=href,frame=src,form="
; Production Value: "a=href,area=href,frame=src,form="
; https://php.net/url-rewriter.tags
session.trans_sid_tags = "a=href,area=href,frame=src,form="

; Default Value: ""
; Development Value: ""
; Production Value: ""
;session.trans_sid_hosts = ""

; Default Value: On
; Development Value: On
; Production Value: On
; https://php.net/session.upload-progress.enabled
session.upload_progress.enabled = On

; Default Value: On
; Development Value: On
; Production Value: On
; https://php.net/session.upload-progress.cleanup
;session.upload_progress.cleanup = On

; Default Value: "upload_progress_"
; Development Value: "upload_progress_"
; Production Value: "upload_progress_"
; https://php.net/session.upload-progress.prefix
;session.upload_progress.prefix = "upload_progress_"

; Default Value: "PHP_SESSION_UPLOAD_PROGRESS"
; Development Value: "PHP_SESSION_UPLOAD_PROGRESS"
; Production Value: "PHP_SESSION_UPLOAD_PROGRESS"
; https://php.net/session.upload-progress.name
;session.upload_progress.name = "PHP_SESSION_UPLOAD_PROGRESS"

; Default Value: "1%"
; Development Value: "1%"
; Production Value: "1%"
; https://php.net/session.upload-progress.freq
;session.upload_progress.freq =  "1%"

; Default Value: 1
; Development Value: 1
; Production Value: 1
; https://php.net/session.upload-progress.min-freq
;session.upload_progress.min_freq = "1"

; https://php.net/session.lazy-write
;session.lazy_write = On

[Assertion]

; Default Value: 1
; Development Value: 1
; Production Value: -1
; https://php.net/zend.assertions
zend.assertions = 1

; https://php.net/assert.active
;assert.active = On

; https://php.net/assert.exception
;assert.exception = On

; https://php.net/assert.warning
;assert.warning = On

; https://php.net/assert.bail
;assert.bail = Off

; https://php.net/assert.callback
;assert.callback = 0

[COM]
; https://php.net/com.typelib-file
;com.typelib_file =

; https://php.net/com.allow-dcom
;com.allow_dcom = true

; https://php.net/com.autoregister-typelib
;com.autoregister_typelib = true

; https://php.net/com.autoregister-casesensitive
;com.autoregister_casesensitive = false

; https://php.net/com.autoregister-verbose
;com.autoregister_verbose = true

;com.code_page =

;com.dotnet_version =

[mbstring]

; https://php.net/mbstring.language
;mbstring.language = Japanese

;mbstring.internal_encoding =

; https://php.net/mbstring.http-input
;mbstring.http_input =

; https://php.net/mbstring.http-output
;mbstring.http_output =

; https://php.net/mbstring.encoding-translation
;mbstring.encoding_translation = Off

; https://php.net/mbstring.detect-order
;mbstring.detect_order = auto

; https://php.net/mbstring.substitute-character
;mbstring.substitute_character = none

;mbstring.strict_detection = Off

; Default: mbstring.http_output_conv_mimetypes=^(text/|application/xhtml\+xml)
;mbstring.http_output_conv_mimetypes =

;mbstring.regex_stack_limit = 100000

;mbstring.regex_retry_limit=1000000

[gd]

; https://php.net/gd.jpeg-ignore-warning
;gd.jpeg_ignore_warning = 1

[exif]

; https://php.net/exif.encode-unicode
;exif.encode_unicode = ISO-8859-15

; https://php.net/exif.decode-unicode-motorola
;exif.decode_unicode_motorola = UCS-2BE

; https://php.net/exif.decode-unicode-intel
;exif.decode_unicode_intel    = UCS-2LE

; https://php.net/exif.encode-jis
;exif.encode_jis =

; https://php.net/exif.decode-jis-motorola
;exif.decode_jis_motorola = JIS

; https://php.net/exif.decode-jis-intel
;exif.decode_jis_intel    = JIS

[Tidy]

; https://php.net/tidy.default-config
;tidy.default_config = /usr/local/lib/php/default.tcfg

; https://php.net/tidy.clean-output
tidy.clean_output = Off

[soap]

; https://php.net/soap.wsdl-cache-enabled
soap.wsdl_cache_enabled = 1

; https://php.net/soap.wsdl-cache-dir
soap.wsdl_cache_dir = "C:/PHP/tmp"

; https://php.net/soap.wsdl-cache-ttl
soap.wsdl_cache_ttl = 86400

soap.wsdl_cache_limit = 5

[sysvshm]

;sysvshm.init_mem = 10000

[ldap]

ldap.max_links = -1

[dba]
;dba.default_handler=

[opcache]

opcache.enable = 1

opcache.enable_cli = 1

opcache.memory_consumption = 128

opcache.interned_strings_buffer = 8

opcache.max_accelerated_files = 8000

opcache.max_wasted_percentage = 5

opcache.use_cwd = 1

opcache.validate_timestamps = 1

opcache.revalidate_freq = 60

;opcache.revalidate_path = 0

opcache.save_comments = 1

opcache.record_warnings = 0

opcache.enable_file_override = 0

;opcache.optimization_level = 0x7FFEBFFF

opcache.dups_fix = 0

opcache.blacklist_filename =

opcache.max_file_size = 0


opcache.force_restart_timeout = 180

opcache.error_log =

opcache.log_verbosity_level = 1

opcache.preferred_memory_model =

opcache.protect_memory = 0

opcache.restrict_api =

;opcache.mmap_base =

;opcache.cache_id =

opcache.file_cache = "C:/PHP/tmp"

opcache.file_cache_only = 0

;opcache.file_cache_consistency_checks = 1

opcache.file_cache_fallback = 0

opcache.huge_code_pages = 0

; Validate cached file permissions.
opcache.validate_permission = 0

opcache.validate_root = 0

opcache.opt_debug_level = 0

; https://php.net/opcache.preload
opcache.preload =

; https://php.net/opcache.preload_user
opcache.preload_user =

opcache.file_update_protection = 2

;opcache.lockfile_path = /tmp

; Default is 1254
opcache.jit = 1205

;Default is 0
opcache.jit_buffer_size = 16M

; Default is 0
opcache.jit_debug = 0

opcache.jit_bisect_limit = 0

; Default is 0.005
opcache.jit_prof_threshold = 0.005

; Default is 128
opcache.jit_max_root_traces = 1024

; Default is 128
opcache.jit_max_side_traces = 128

; Default is 16
opcache.jit_blacklist_root_trace = 16

; Default is 8192
opcache.jit_max_exit_counters = 8192

; Default is 64
opcache.jit_hot_loop = 64

; Default is 127
opcache.jit_hot_func = 127

; Default is 8
opcache.jit_hot_return = 8

; Default is 8
opcache.jit_hot_side_exit = 8

; Default is 16
opcache.jit_blacklist_root_trace = 16

; Default is 8
opcache.jit_blacklist_side_trace = 8

; Default is 8
opcache.jit_max_loops_unrolls = 8

; Default is 2
opcache.jit_max_recursive_calls = 2

; Default is 2
opcache.jit_max_recursive_returns = 2

; Default is 2
opcache.jit_max_polymorphic_calls = 2

[curl]

;curl.cainfo = "C:\xampp\apache\bin\curl-ca-bundle.crt"

[openssl]

;openssl.cafile = "C:/xampp/apache/bin/curl-ca-bundle.crt"

;openssl.capath =

[ffi]
; "preload" - enabled in CLI scripts and preloaded files (default)
; "false"  - always disabled
; "true"    - always enabled
;ffi.enable = preload

; List of headers files to preload, wildcard patterns allowed.
;ffi.preload =

Please keep in mind. This is heavily trimmed to save space. And this is **MY** custom settings of PHP 8.4.1 for Windows Server 2022 DataCenter. This is a NON XAMPP install. I have had these settings for decades! ONLY CHANGE SETTINGS IF THEY EXISTS IN YOUR PHP.INI file. Adding settings which do not exists will cause your webserver to crash out on starting up. When I updated to 8.2 I had to add a lot to my existing PHP.INI and I also had to remove some. So keep this in mind. I have also had xdebug, but it is not compatible with work with opcache and as you you can see there were some settings, but I found them ALL and added them to enable it and get it working.

USE THIS WITH CAUTION
VSP™ v1.1.52 Released currently working on v1.1.53 in progress

Fragenstein

Okay, that php.ini file was a disaster (for me). I went to xampp website and downloaded xampp (zip file).
I renamed my php folder to php_bak and took the entire php folder from the zip file and copied that to the server.
I only made a few changes to php.ini (timezone, and enabling a few extensions...gd, etc.). The awards are now processing
correctly and I'm not seeing any error messages. The only thing that is still an issue is excluding those 3 bots.
I have a feeling that since they are exclusive to excessive+ that may be the issue. See you when things settle down.

Krillin

That is good to hear, I think? I got my situation under control. But I am going to be busy working a lot to further stabilize this situation. So I am going to be sporadic with working on this.

I was trying to implement the country codes, but that caused an issue with generating awards. So I am still ironing out the details there.

I will add the issue with the ban / ignore list to the list of bugs to address. But this really has nothing to do with PHP Version error, so I am going to have to split this topic up when I get around to it some time this evening.
VSP™ v1.1.52 Released currently working on v1.1.53 in progress