OpenSource-Hub
Y

YOURLS

12.0k stars·개발 도구·SHA-256 체크섬 확인됨

자체 호스팅 단축 링크 서비스로, 데이터에 대한 완전한 제어와 상세한 통계를 제공하며 플러그인 확장을 지원합니다.

스마트 다운로드

프로젝트 홈페이지 방문

아직 설치 프로그램이 없습니다 — 소스 저장소로 이동하세요

자체 단축 링크 서비스를 구축하여 데이터와 통계를 완전히 제어하세요.

주요 기능

  • 완전 자체 호스팅: 자체 서버에 설치하므로 데이터 프라이버시 걱정 없음
  • 상세 클릭 통계: 클릭 수, 출처, 지리적 위치 등 확인 가능
  • 사용자 지정 키워드: 개인화된 단축 링크 생성(예: yourls.com/offer)
  • 강력한 플러그인 시스템: 커뮤니티에서 제공하는 수많은 플러그인으로 다양한 기능 확장
  • 오픈 API: 프로그래밍 방식의 단축 링크 생성 및 관리 지원

할 수 없는 것

  • •PHP 7.4 이상 버전이 필요하며, PDO_MYSQL 확장을 활성화해야 합니다; 2. 데이터 전송 보안을 위해 HTTPS 사용을 권장합니다; 3. 기본 설치 후 관리자 경로(예: /admin)를 변경하고 강력한 비밀번호를 설정하는 것이 좋습니다; 4. 공개적으로 사용할 계획이라면 스팸 방지 메커니즘에 주의해야 합니다; 5. 프로덕션 환경에서는 Nginx/Apache를 사용하고 URL 재작성을 활성화하는 것을 권장합니다.

사용 사례

  • 브랜드 마케팅: 자체 도메인으로 단축 링크를 생성하여 브랜드 이미지 향상
  • 소셜 미디어 프로모션: 긴 링크를 단축하여 공유와 효과 추적이 용이
  • 링크 관리: 모든 단축 링크를 통합 관리하고 클릭 데이터 확인
  • 학술 인용: 논문이나 자료를 위한 지속적이고 안정적인 단축 링크 생성

상세 설명

YOURLS는 오픈소스 무료 PHP 애플리케이션으로, 자신의 서버에 전용 단축 링크 서비스를 구축할 수 있습니다. 데이터를 완전히 제어할 수 있으며, 상세한 클릭 통계, 사용자 정의 키워드, API 인터페이스 및 강력한 플러그인 확장 시스템을 제공합니다. 상용 단축 링크 서비스와 달리 모든 데이터를 소유하고 자유롭게 커스터마이징할 수 있습니다. 브랜드 마케팅, 링크 관리 및 개인정보 보호가 필요한 환경에 매우 적합합니다.

문제 해결 & FAQ (2)

문제 해결
독일어(de_DE) 또는 천 단위 구분 기호로 마침표를 사용하는 다른 로케일에서 YOURLS 관리자 목록이 클릭 수를 잘못 정렬하는 이유는 무엇인가요?

YOURLS 1.10.6에서는 클릭 수 열이 로케일 형식의 숫자(예: de_DE에서는 1.258)를 표시하지만, jQuery tablesorter가 usNumberFormat: true로 이를 파싱하여 1.258을 1258이 아닌 1.258으로 읽습니다. 이로 인해 .를 천 단위 구분 기호로 사용하는 모든 로케일(de_DE, nl_NL, it_IT, pt_BR)에서 정렬이 깨집니다. PR #4197에서 업스트림으로 수정되었습니다(YOURLS를 업데이트하세요). 1.10.6용 해결 방법: (1) html_head 훅에서 jQuery.tablesorter.defaults.usNumberFormat = false;를 출력하는 작은 플러그인을 추가합니다. (2) 또는 js/tablesorte.js를 패치하여 클릭 수 열에서 숫자만 추출합니다: textExtraction: { 4: function(node){ return $(node).text().replace(/\D/g, ''); } }. (3) 또는 클릭 수 셀에 원시 숫자를 data-text 속성으로 추가하면 tablesorter가 기본적으로 이를 읽습니다.

원본 Issue #4171
문제 해결
MariaDB/PDO 환경에서 YOURLS 관리자 검색 시 발생하는 치명적 오류 "COLLATION 'utf8mb4_unicode_ci' is not valid for CHARACTER SET 'binary'"를 어떻게 수정하나요?

이 문제는 YOURLS 1.10.4에서 all 또는 title을 검색할 때 MariaDB 세션이 바인딩된 :search 매개변수를 binary로 처리하는 경우 발생하며, 일반적으로 init_connect=SET NAMES binary가 DSN 문자 집합을 재정의하는 것이 원인입니다.

1. 연결 설정을 확인합니다:

SHOW VARIABLES LIKE 'init_connect';
SHOW VARIABLES LIKE 'character_set%';

2. PDO 연결이 utf8mb4를 사용하도록 강제합니다:

$pdo = new PDO(
    'mysql:host=localhost;dbname=YOUR_DB;charset=utf8mb4',
    'YOUR_USER',
    'YOUR_PASS',
    [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8mb4",
    ]
);

또는 연결 후 다음을 실행합니다:
$pdo->query('SET NAMES utf8mb4');

서버를 제어할 수 있는 경우 init_connect=SET NAMES binary를 제거하거나 변경합니다.

3. 코드 수준의 해결 방법으로, 제목 검색 SQL에서 바인딩된 플레이스홀더의 콜레이션을 제거합니다:

`title` COLLATE utf8mb4_unicode_ci LIKE (:search)

또는 매개변수를 명시적으로 변환합니다:
`title` COLLATE utf8mb4_unicode_ci
LIKE CONVERT(:search USING utf8mb4) COLLATE utf8mb4_unicode_ci

연결 문자 집합이 binary인 경우 (:search) COLLATE utf8mb4_unicode_ci를 사용하지 마세요. 코어 파일 패치는 업그레이드 시 덮어쓰일 수 있으므로 연결 문자 집합을 변경하는 것이 권장되는 해결 방법입니다.

원본 Issue #4110

태그

url-shortenerself-hostedphpopen-sourceanalytics

시작하기

1

설치 프로그램 다운로드

위 버튼을 클릭하여 시스템에 맞는 설치 프로그램을 다운로드

2

소프트웨어 설치

다운로드한 설치 프로그램을 더블 클릭하고 안내에 따르세요

3

1단계: YOURLS 소스 코드를 다운로드하여 Web 서버에 업로드합니다(PHP 7.4+ 및 MySQL/MariaDB 필요)

4

2단계: 서버에 데이터베이스와 사용자를 생성하고 user/config-docker.php 또는 user/config.php에 데이터베이스 연결 정보를 구성합니다

5

3단계: 브라우저에서 도메인에 접속하여 설치 마법사를 실행하고 관리자 계정 비밀번호를 설정합니다

설치 가이드
  1. 1단계: YOURLS 소스 코드를 다운로드하여 Web 서버에 업로드합니다(PHP 7.4+ 및 MySQL/MariaDB 필요)
  2. 2단계: 서버에 데이터베이스와 사용자를 생성하고 user/config-docker.php 또는 user/config.php에 데이터베이스 연결 정보를 구성합니다
  3. 3단계: 브라우저에서 도메인에 접속하여 설치 마법사를 실행하고 관리자 계정 비밀번호를 설정합니다
파일 무결성

체크섬 없음

이 프로젝트는 GitHub Release 페이지에 SHA-256 체크섬을 게시하지 않았습니다

SHA256 체크섬

체크섬 없음

GitHub Releases에서 직접 다운로드하고 파일 무결성을 직접 확인하세요

이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.

오픈소스 투명성

GitHub 소스 보기
환경 가이드

제거 정보

YOURLS 설치 디렉터리의 모든 파일을 삭제하고, 해당하는 MySQL 데이터베이스와 테이블도 함께 삭제하세요. 사용자 정의 설정과 플러그인은 반드시 백업해 두세요.

추가 의존성 없음

다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.

프로젝트 정보
라이선스MIT
마지막 업데이트2026-10-26 17:06:56
GitHub 저장소공식 웹사이트

문제 발생? 아래 FAQ 확인

2 FAQs

유사한 프로젝트