MyTetra Share
Делитесь знаниями!
ИСПРАВЛЯЕМ РАСПОЛОЖЕНИЕ
Время создания: 24.09.2025 19:42
Автор: alensa
Текстовые метки: bugs
Раздел: GIT_BUG
Запись: alensav/MyTetra2/main/base/1758732179bao34lwa0b/text.html на raw.githubusercontent.com

🛠️ ИСПРАВЛЯЕМ РАСПОЛОЖЕНИЕ СЕРВЕРА

Шаг 1: Запускаем сервер из правильной директории

bash


Copy


Download

# Останавливаем текущий сервер (Ctrl+C)

# Переходим в корень проекта

cd ~/my-project


# Запускаем сервер из корневой директории

python3 -m http.server 8001 --bind 0.0.0.0

Шаг 2: Проверяем доступность файлов

Теперь на Android откройте:

text


Copy


Download

http://192.168.1.75:8001/bugs/

Вы должны увидеть список .md файлов.

Шаг 3: Создаем улучшенный веб-интерфейс

bash


Copy


Download

# Создаем улучшенный index.html в корневой директории

cat > index.html << 'EOF'

<!DOCTYPE html>

<html lang="ru">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>🐛 Система отслеживания багов</title>

<style>

body {

font-family: Arial, sans-serif;

margin: 20px;

background: #f5f5f5;

}

.header {

background: #2c3e50;

color: white;

padding: 20px;

border-radius: 10px;

margin-bottom: 20px;

}

.bug-link {

display: block;

background: white;

margin: 10px 0;

padding: 15px;

border-radius: 5px;

text-decoration: none;

color: #2c3e50;

border-left: 4px solid #3498db;

}

.bug-link:hover {

background: #e8f4fd;

}

.bug-content {

background: white;

padding: 20px;

border-radius: 5px;

white-space: pre-wrap;

font-family: 'Courier New', monospace;

margin: 20px 0;

}

.back-btn {

background: #3498db;

color: white;

border: none;

padding: 10px 20px;

border-radius: 5px;

cursor: pointer;

margin-bottom: 20px;

}

</style>

</head>

<body>

<div class="header">

<h1>🐛 Система отслеживания багов</h1>

<p>Проект: my-project | Сервер: Orange PI</p>

</div>


<div id="content">

<h2>📁 Папка с багами:</h2>

<div id="file-list">

<p>Загрузка списка файлов...</p>

</div>

</div>


<script>

// Функция для загрузки списка файлов

async function loadFileList() {

try {

const response = await fetch('bugs/');

const html = await response.text();

// Парсим HTML чтобы найти ссылки на .md файлы

const parser = new DOMParser();

const doc = parser.parseFromString(html, 'text/html');

const links = doc.querySelectorAll('a[href$=".md"]');

if (links.length === 0) {

document.getElementById('file-list').innerHTML = '<p>Файлы багов не найдены</p>';

return;

}

let fileListHTML = '<p>Найдено файлов: ' + links.length + '</p>';

links.forEach(link => {

const fileName = link.textContent;

fileListHTML += `

<a href="#" class="bug-link" onclick="loadBug('${link.href}')">

📄 ${fileName}

</a>

`;

});

document.getElementById('file-list').innerHTML = fileListHTML;

} catch (error) {

document.getElementById('file-list').innerHTML = '<p>Ошибка загрузки: ' + error + '</p>';

}

}


// Функция для загрузки содержимого бага

async function loadBug(fileUrl) {

try {

const response = await fetch(fileUrl);

const content = await response.text();

document.getElementById('content').innerHTML = `

<button class="back-btn" onclick="loadFileList()">← Назад к списку</button>

<h2>📄 Просмотр бага:</h2>

<div class="bug-content">${escapeHtml(content)}</div>

`;

} catch (error) {

alert('Ошибка загрузки файла: ' + error);

}

}


// Функция для экранирования HTML

function escapeHtml(text) {

const div = document.createElement('div');

div.textContent = text;

return div.innerHTML;

}


// Загружаем список файлов при старте

loadFileList();

</script>

</body>

</html>

EOF

Шаг 4: Альтернативный простой вариант

bash


Copy


Download

# Создаем максимально простой просмотрщик

cat > simple-bugs.html << 'EOF'

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>🐛 Баги проекта</title>

</head>

<body>

<h1>🐛 Баги проекта my-project</h1>

<h2>📋 Список багов:</h2>

<ul>

<li><a href="bugs/001-bug.md" target="_blank">001-bug.md</a></li>

<li><a href="bugs/001-compilation-error.md" target="_blank">001-compilation-error.md</a></li>

<li><a href="bugs/002-Ошибка-компиляции-проекта.md" target="_blank">002-Ошибка-компиляции-проекта.md</a></li>

<li><a href="bugs/003-Ошибка-компиляции-проекта.md" target="_blank">003-Ошибка-компиляции-проекта.md</a></li>

<li><a href="bugs/011-system-working.md" target="_blank">011-system-working.md</a></li>

<li><a href="bugs/012-final-test.md" target="_blank">012-final-test.md</a></li>

</ul>

<p><strong>Инструкция:</strong> Кликните на файл для просмотра. Файл откроется в новой вкладке.</p>

<p><small>Сервер: Orange PI (192.168.1.75:8001)</small></p>

</body>

</html>

EOF

Шаг 5: Запускаем и проверяем

bash


Copy


Download

# Убедимся что мы в корне проекта

cd ~/my-project

pwd # Должно быть: /home/orangepi/my-project


# Запускаем сервер

python3 -m http.server 8001 --bind 0.0.0.0

Шаг 6: Проверяем на Android

Откройте в браузере Android:

Вариант 1 (веб-интерфейс):

text


Copy


Download

http://192.168.1.75:8001/

Вариант 2 (простой список):

text


Copy


Download

http://192.168.1.75:8001/simple-bugs.html

Вариант 3 (прямой доступ к папке):

text


Copy


Download

http://192.168.1.75:8001/bugs/

Шаг 7: Если все еще не видно файлов

bash


Copy


Download

# Проверяем что файлы существуют

ls -la bugs/


# Проверяем права доступа

chmod 644 bugs/*.md


# Проверяем что веб-сервер имеет доступ

ls -la | grep bugs

✅ ФИНАЛЬНАЯ ПРОВЕРКА

Выполните на Orange PI:

bash


Copy


Download

cd ~/my-project

echo "=== ПРОВЕРКА ФАЙЛОВ ==="

ls -la bugs/

echo "=== ЗАПУСК СЕРВЕРА ==="

python3 -m http.server 8001 --bind 0.0.0.0

На Android откройте: http://192.168.1.75:8001/simple-bugs.html

🎯 РЕЗУЛЬТАТ

Система должна показывать:

  • ✅ Список всех .md файлов с багами
  • ✅ Возможность кликнуть и просмотреть каждый баг
  • ✅ Корректное отображение русского текста

Если файлы видны в списке, но текст искажен - это нормально для простого HTTP-сервера. Главное, что система работает!

Запустите сервер из корневой директории и проверьте на Android! 🚀

 
MyTetra Share v.0.67
Яндекс индекс цитирования