Задать вопрос
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    Кот Абсолютный, Конкретизировать можно, а не сыпать абстракциями?
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    imasdf, на сервере не установлен го, да и таскать проект с локалки на сервеа для сборки та еще затея...
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    Дмитрий, Крайне полезный ответ!
    Написано
  • Trace/breakpoint trap (core dumped)?

    sslion
    @sslion Автор вопроса
    imasdf, Сборку делаю на винде, вот PowerShell скрипт
    param(
        [string]$Platform = "linux",   # linux, windows, darwin (macOS)
        [string]$Arch = "amd64",       # amd64, arm64, 386
        [string]$OutputName = "myapp",
        [string]$GoFile = "main.go"
    )
    
    Write-Host "Компиляция для $Platform/$Arch..."
    $env:GOOS = $Platform
    $env:GOARCH = $Arch
    $env:CGO_ENABLED = 0
    go build -o "$OutputName-$Platform-$Arch" $GoFile
    
    if ($LASTEXITCODE -eq 0) {
        Write-Host "Успешно: $OutputName-$Platform-$Arch" -ForegroundColor Green
    } else {
        Write-Host "Ошибка компиляции!" -ForegroundColor Red
        exit 1
    }


    Вот сама программулина, сделана полностью усилиями Deepseek
    package main
    
    import (
    	"database/sql"
    	"encoding/json"
    	"fmt"
    	"log"
    	"net"
    	"net/http"
    	"strings"
    )
    import _ "github.com/go-sql-driver/mysql"
    
    func handler(c net.Conn) {
    	addr := c.RemoteAddr().String()
    	fmt.Println("new connection")
    	fmt.Println(addr)
    	c.Write([]byte("ok"))
    	c.Close()
    }
    
    func main() {
    	log.Println("Программа запущена")
    
    	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    		fmt.Fprintf(w, "Hello World!")
    	})
    	http.HandleFunc("/lists", func(w http.ResponseWriter, r *http.Request) {
    		fmt.Println("/lists входящий запрос")
    
    		db, err := sql.Open("**************************")
    		if err != nil {
    			fmt.Fprintf(w, "Ошибка подключения к базе")
    			fmt.Println("Ошибка подключения к базе")
    			panic(err)
    			return
    		}
    		defer db.Close()
    
    		rows, err := db.Query("SELECT lists.id, lists.title, lists.code, lists.type FROM lists LEFT JOIN list_items ON lists.id = list_items.list_id")
    		if err != nil {
    			panic(err)
    		}
    		defer rows.Close()
    
    		// JSON
    		if err := printJSONResults(w, rows); err != nil {
    			http.Error(w, err.Error(), http.StatusInternalServerError)
    		}
    
    		// TEXT
    		//w.Header().Set("Content-Type", "text/plain")
    		//if err := printPlainTextResults(w, rows); err != nil {
    		//	http.Error(w, err.Error(), http.StatusInternalServerError)
    		//}
    
    	})
    	log.Println("Установлены хэндлеры")
    
    	http.ListenAndServe(":5000", nil)
    	log.Println("Приложение запущено на 5000 порту")
    }
    
    func printJSONResults(w http.ResponseWriter, rows *sql.Rows) error {
    	cols, err := rows.Columns()
    	if err != nil {
    		return err
    	}
    
    	var results []map[string]interface{}
    	values := make([]interface{}, len(cols))
    	pointers := make([]interface{}, len(cols))
    	for i := range values {
    		pointers[i] = &values[i]
    	}
    
    	for rows.Next() {
    		err := rows.Scan(pointers...)
    		if err != nil {
    			return err
    		}
    
    		row := make(map[string]interface{})
    		for i, col := range cols {
    			val := values[i]
    			if b, ok := val.([]byte); ok {
    				row[col] = string(b) // Преобразование []byte в string
    			} else {
    				row[col] = val
    			}
    		}
    		results = append(results, row)
    	}
    
    	w.Header().Set("Content-Type", "application/json")
    	return json.NewEncoder(w).Encode(results)
    }
    
    func printPlainTextResults(w http.ResponseWriter, rows *sql.Rows) error {
    	cols, err := rows.Columns()
    	if err != nil {
    		return err
    	}
    
    	// Заголовки столбцов
    	var header string
    	for _, col := range cols {
    		header += fmt.Sprintf("%-15s", col) // Форматирование с фиксированной шириной
    	}
    	fmt.Fprintln(w, header)
    	fmt.Fprintln(w, strings.Repeat("-", len(cols)*15))
    
    	// Данные
    	values := make([]interface{}, len(cols))
    	pointers := make([]interface{}, len(cols))
    	for i := range values {
    		pointers[i] = &values[i]
    	}
    
    	for rows.Next() {
    		err := rows.Scan(pointers...)
    		if err != nil {
    			return err
    		}
    
    		var row string
    		for _, val := range values {
    			row += fmt.Sprintf("%-15v", val)
    		}
    		fmt.Fprintln(w, row)
    	}
    	return nil
    }
    
    type List struct {
    	ID    int    `json:"id" db:"id"`
    	Title string `json:"title" db:"title"`
    	Code  string `json:"code" db:"code"`
    	Type  string `json:"type" db:"type"` // В коде - `Type`, но в БД/JSON - `type`
    }


    На VDS Ububntu 22
    Написано
  • Почему телеграмм отправляем сразу несколько webhook?

    sslion
    @sslion
    Неужели сложно залогировать входящие апдейты и выложить сюда "дубли"?
    Сто процентов эти "дубли" совсем не будут дублями...
    У меня при работе с ботами никогда не было дублей
    Написано
  • Некорректно работает пагинация?

    sslion
    @sslion Автор вопроса
    Дмитрий, Просто так устроен вывод списка товаров, на кой там нужны коменты я хз, но заказчику виднее.... Видимо хотят сэкономить на запросах к API
    Написано
  • Действительно ли скрипт на этом сайте не работает?

    sslion
    @sslion
    Ну вообще-то по ссылке (на картинке) грузится иконка favicon.ico, а не скрипт
    Ошибка в предыдущем сообщении, ее и нужно смотреть.
    Написано
  • Codeigniter permission denied?

    sslion
    @sslion Автор вопроса
    Дмитрий, лог сервера я в вопросе показал
    Написано
  • Codeigniter permission denied?

    sslion
    @sslion Автор вопроса
    Дмитрий, Такого в принципе не может быть, потому что все остальное работает, админка, кабинет юзера, да просто раздел новостей. Ведь приложение работает через одну точку входа...
    Все падает на этапе загрузки конфигов, хотя они одни на все приложение
    Написано
  • Opengl server rendering c#?

    sslion
    @sslion Автор вопроса
    Такой вариант не подходит т.к. используется GPU, а у меня VDS.
    Должно получиться ASP.NET WebAPP, которое рендерит сцену, результат пишет в файл картинки, и выдает урл картинки для использования в <IMG SRC="src/url">
    Рендеринг должен проходить БЕЗ использования видеокарты.
    Написано
  • Как добавить в форму новую строку?

    sslion
    @sslion
    А приведенный код точно рабочий? Не вижу у инпутов нэймы... Как данные из этих инпутов попадают в $_POST?

    А так ничего сложного. В html добавить еще один div с инпутом для модели, в обработчике отправки формы добавить обработку нового инпута. в php добавить что- типа
    if (isset($_POST['model'])) {$model = $_POST['model'];}
    и $e->body.="Модель: <b>$model</b> <br/>";
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Михаил Ливач,
    Loaded Configuration File: /etc/php/8.2/fpm/php.ini

    как я писал выше, я пробовал там указывать папку, но эффект противоположный - перестал работать phpMyAdmin
    Все таки наверное нужно править конфиг веб сервера, а не пыхи...
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Михаил Ливач,
    /etc/php/8.2/fpm/conf.d/10-mysqlnd.ini, /etc/php/8.2/fpm/conf.d/10-opcache.ini, /etc/php/8.2/fpm/conf.d/10-pdo.ini, /etc/php/8.2/fpm/conf.d/15-xml.ini, /etc/php/8.2/fpm/conf.d/20-apcu.ini, /etc/php/8.2/fpm/conf.d/20-bcmath.ini, /etc/php/8.2/fpm/conf.d/20-bz2.ini, /etc/php/8.2/fpm/conf.d/20-calendar.ini, /etc/php/8.2/fpm/conf.d/20-ctype.ini, /etc/php/8.2/fpm/conf.d/20-curl.ini, /etc/php/8.2/fpm/conf.d/20-dom.ini, /etc/php/8.2/fpm/conf.d/20-exif.ini, /etc/php/8.2/fpm/conf.d/20-ffi.ini, /etc/php/8.2/fpm/conf.d/20-fileinfo.ini, /etc/php/8.2/fpm/conf.d/20-ftp.ini, /etc/php/8.2/fpm/conf.d/20-gd.ini, /etc/php/8.2/fpm/conf.d/20-gettext.ini, /etc/php/8.2/fpm/conf.d/20-iconv.ini, /etc/php/8.2/fpm/conf.d/20-imagick.ini, /etc/php/8.2/fpm/conf.d/20-imap.ini, /etc/php/8.2/fpm/conf.d/20-intl.ini, /etc/php/8.2/fpm/conf.d/20-ldap.ini, /etc/php/8.2/fpm/conf.d/20-mbstring.ini, /etc/php/8.2/fpm/conf.d/20-mysqli.ini, /etc/php/8.2/fpm/conf.d/20-pdo_mysql.ini, /etc/php/8.2/fpm/conf.d/20-phar.ini, /etc/php/8.2/fpm/conf.d/20-posix.ini, /etc/php/8.2/fpm/conf.d/20-pspell.ini, /etc/php/8.2/fpm/conf.d/20-readline.ini, /etc/php/8.2/fpm/conf.d/20-shmop.ini, /etc/php/8.2/fpm/conf.d/20-simplexml.ini, /etc/php/8.2/fpm/conf.d/20-soap.ini, /etc/php/8.2/fpm/conf.d/20-sockets.ini, /etc/php/8.2/fpm/conf.d/20-sysvmsg.ini, /etc/php/8.2/fpm/conf.d/20-sysvsem.ini, /etc/php/8.2/fpm/conf.d/20-sysvshm.ini, /etc/php/8.2/fpm/conf.d/20-tokenizer.ini, /etc/php/8.2/fpm/conf.d/20-xmlreader.ini, /etc/php/8.2/fpm/conf.d/20-xmlwriter.ini, /etc/php/8.2/fpm/conf.d/20-xsl.ini, /etc/php/8.2/fpm/conf.d/20-zip.ini

    вот файлы которые читаются, но хз что где прописывать, чтобы папку открыть
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Adamos, модуль апача видимо
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Ипатьев, это VDS
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Adamos, во всех установленных версиях php (fpm) прописаны папки
    67dbd654399b6106587822.png
    как-то так...
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Adamos, да, без изменений. я и пыху просто перезапускал, и весь сервак, но не помогло
    Написано
  • Ошибка require?

    sslion
    @sslion Автор вопроса
    Пытаюсь в php.ini сделать так
    open_basedir = "/home/sslion/web/api.dev-to.ru:/home/sslion/web/dev-to.ru"

    но эффекта ноль
    Написано
  • Базы превратились в RECOVER_YOUR_DATA. Как исправить?

    sslion
    @sslion Автор вопроса
    к сожалению да
    67db255b8f6d8667380442.png
    Написано