Skip to content

azlux/Simple-URL-Shortener

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
June 24, 2019 15:16
inc
July 31, 2019 00:33
April 29, 2015 14:36
May 18, 2020 12:00
June 12, 2019 23:53
May 18, 2020 11:52
June 24, 2019 15:16
February 15, 2020 01:44

simple-shortener by Azlux

Simple shortener working with MySQL or SQLite database in PHP. The goal is to create a simple and KISS shortener without dependencies. The user can add comments for the link to find it faster into its history.

Nice shortcut added. The shortcut will create a new short url of your current page when you click on it. Writed to work into subfolder. (don't need to be at the root)

Installation :

  • clone this project
  • Copy inc/config.example.php to inc/config.php
  • Set you config file
  • Call installation.php to setup the database
  • delete installation.php
  • Create a user, the first one will be an admin (allow you to see no connected shorted links)

Warning

For security reasons, the cookies are set on https only (cookie_secure mode) Authentification will not for if your website isn't on HTTPS. For testing purpose, you need an browser addons to disable this security like this one on Firefox.

Nginx configuration :

location / {
    rewrite ^/(.*)$ /index.php?site=$1 last;
    try_files $uri $uri/ /index.php;
}
location /assets {
    try_files $uri =404;
}
location /favicon.ico {
    try_files $uri =404;
}
location ~ \.php$ {
    try_files $uri =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_index index.php;
    fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}
location ~* \.(sqlite3|ht)$ {
    deny all;
}

Apache configuration (.htaccess) :

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?site=$1 [L] 

Credit :

Based on code provided by SilouFR

Dev PHP : Azlux

Design : Spokeek

About

url shortener written in php (with MySQL or SQLite) with history by users

Resources

License

Stars

Watchers

Forks

Packages

No packages published