This is url shortener application is similar to bit.ly
- Host : https://short.supanadit.com
- Email : admin@email.com
- Password : 123
- Laravel 7.0+
- PHP 7.4
composer install
- create
.env
file php artisan key:generate
php artisan migrate
php artisan db:seed
php artisan serve
<VirtualHost *:80>
DocumentRoot /srv/http/short/public
ServerAdmin webmaster@localhost
ServerName short.test
<Directory /srv/http/short/public>
DirectoryIndex index.php
AllowOverride All
Options FollowSymlinks
Require all granted
</Directory>
ErrorLog /var/log/httpd/short.test-error_log
CustomLog /var/log/httpd/short.test-access_log common
</VirtualHost>
This app can run inside docker with official support
docker-compose up -d
docker-compose exec short-app php artisan migrate
docker-compose exec short-app php artisan db:seed
docker build . -t supanadit/short-url:1.0.2
docker-compose -f docker-compose.dev.yml up -d
docker-compose -f docker-compose.dev.yml exec -w /srv short composer install # Composer Install
docker-compose -f docker-compose.dev.yml exec -w /srv short php artisan key:generate # Generate Key
docker-compose -f docker-compose.dev.yml exec -w /srv short php artisan migrate
docker-compose -f docker-compose.dev.yml exec -w /srv short php artisan db:seed
docker-compose -f docker-compose.dev.yml down
docker-compose -f docker-compose.dev.yml exec -w /srv short php artisan config:cache
docker-compose -f docker-compose.dev.yml build
Run this script sudo chown -R 1001:1001 mysql
Because we used Bitnami distribution version of MySQL, so we need to change the permission of mysql folder, since it also described in docker page of bitnami
If you want to use forgot password feature, you must provide your email and password at .env
Copyright 2020 Supan Adit Pratama
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an " AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.