Для связи вашего веб-сервера с игровым сервером и решения поставленных задач, можно использовать несколько подходов. Ниже приведены рекомендации по каждой из задач.
### Задача 1: Получение данных из файлов и отображение их на сайте
1. **Настройка FTP/SFTP/SCP/SSH доступа**: Если у вас есть доступ к файловой системе игрового сервера, убедитесь, что вы можете подключаться к нему через FTP/SFTP или использовать SSH для выполнения команд. Это даст вам возможность считывать файлы с игрового сервера.
2. **Создание скрипта на веб-сервере**:
- Напишите скрипт на сервере (например, на Python, PHP или другом языке), который будет подключаться к игровому серверу и считывать нужные файлы.
- Используйте библиотеку, такую как `paramiko` в Python для SSH, чтобы подключаться к игровому серверу и считывать данные из файлов.
Пример на Python с использованием `paramiko`:
```python
import paramiko
# Настройка соединения
hostname = '94.104.0.3'
username = 'your_username'
password = 'your_password'
# Установка соединения
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname, username=username, password=password)
# Считывание файла
stdin, stdout, stderr = client.exec_command('cat /path/to/file/стим-айди-845639.конф')
data = stdout.read().decode()
# Закрытие соединения
client.close()
# Обработка данных и отображение на веб-сайте
print(data)
```
3. **Отображение данных на сайте**:
- Сформируйте веб-страницу с использованием HTML/CSS и отображайте данные на основе считанных из игровых файлов.
### Задача 2: Перемещение файла и переименование
1. **Новый скрипт для перемещения и переименования**:
- Вы можете также использовать SSH для перемещения и переименования файлов на игровом сервере.
- Когда игрок выбирает новую ячейку, создайте новый файл на основе существующего, добавив нужный суффикс к имени.
Пример команды для перемещения и переименования:
```python
# Перемещение и переименование файла
old_file_path = '/path/to/file/стим-айди-845639.конф'
new_file_name = 'стим-айди-845639-лот1.конф'
new_file_path = f'/path/to/new_folder/{new_file_name}'
# Команда для перемещения
client.exec_command(f'mv {old_file_path} {new_file_path}')
```
### Дополнительные рекомендации и ссылки
1. **Безопасность**: Обязательно обращайте внимание на безопасность передачи данных. Использование SSH или SFTP предпочтительнее для защиты данных при передаче.
2. **Документация**: Вот несколько ссылок на темы, связанные с вышеописанными процессами:
- [Paramiko Documentation](http://docs.paramiko.org/en/latest/)
- [Python SSH Tutorial](https://www.digitalocean.com/community/tutorials/how-to-use-ssh-keys-with-ssh)
- [PHP FTP Functions](https://www.php.net/manual/en/ref.ftp.php)
3. **RESTful API**: Рассмотрите возможность создания API на игровом сервере, который будет позволять веб-серверу запрашивать информацию о состоянии игроков и выполнять действия, как перемещение файлов. Это упростит связь между серверами.
Эти рекомендации помогут вам организовать связь между веб-сервером и игровым сервером, а также эффективно управлять файлами игроков.