yarkov
@yarkov
Помог ответ? Отметь решением.

Почему сервер возвращает ошибку 500?

Есть поддомен, где я размещаю демостраницы примеров Bootstrap. В корне поддомена лежит index.php с таким кодом
<!DOCTYPE html>
<html lang="ru">
	<head>
		<meta charset="utf-8">
		<title>Список категорий</title>
		<meta name="viewport" content="width=device-width, initial-scale=1">
		
		<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
		<script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
		<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/js/bootstrap.min.js"></script>
		<style type="text/css">
			.nav>li>a{
				font-size: 12px;
			}
		</style>
	</head>
	<body>
		<div class="container">
			<h3 class="text-center">Список категорий</h3>
		</div>
		<div class="container">
			<div class="row">
				<div class="col-xs-12 col-sm-6 col-md-4 col-sm-offset-3 col-md-offset-4">
<?php
	
	//error_reporting(E_ALL);
	//ini_set("display_errors", 1); 
	$categories_root = $_SERVER["DOCUMENT_ROOT"] . "/";
	$elements = array();
	$categories = scandir($categories_root);
	foreach($categories as $dir){
		if($dir != "." && $dir != ".." && $dir != "images" && is_dir($categories_root . $dir)){
			$pages_dir = scandir($categories_root . $dir . "/");
			$pages = array();
			foreach($pages_dir as $page){
				if($page != "." && $page != ".." && is_dir($categories_root . $dir . "/" . $page)){
					$pages[] = $page;
				}
			}
			$elements[$dir] = $pages;
		}
	}
	if(count($elements) > 0){
		echo "<div class='well'>" . PHP_EOL;
		echo "\t<ul class='nav nav-list'>" . PHP_EOL;
			foreach($elements as $key => $value){
				if(count($value) > 0){
					echo "\t\t<li class='nav-header'>Категория \"".$key."\" (".count($value)." страниц)" . PHP_EOL;
					echo "\t\t\t<ul class='nav nav-list'>" . PHP_EOL;
					foreach($value as $k => $v){
						$text = file_get_contents($categories_root . $key . "/" . $v . "/description.txt");
						echo "\t\t\t\t<li><a href='".$key."/".$v."'>".$text."</a></li>" . PHP_EOL;
					}
					echo "\t\t\t</ul>" . PHP_EOL;
					echo "\t\t</li>" . PHP_EOL;
				}
				else{
					echo "\t\t<li class='nav nav-header'>Категория \"".$key."\" пока пустая</li>" . PHP_EOL;
				}
			}
		echo "\t</ul>" . PHP_EOL;
		echo "</div>" . PHP_EOL;
	}
}

?>
				</div>
			</div>
		</div>
		
	</body>
</html>

Но скрипт вместо списка категорий отображает пустую страницу и отдает ошибку 500. Смотрим скрин ниже.
8d581d0f06ca46f38076ad1ece08d99b.png
Что не так?
  • Вопрос задан
  • 403 просмотра
Пригласить эксперта
Ответы на вопрос 1
Defman21
@Defman21
Смотри логи.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы