4.8 KiB
TinyIB - A Lightweight and Efficient Image Board Script
Got database? Get speed. Use MySQL or SQLite for an efficient set-up able to handle high amounts of traffic.
No database? No problem. Store posts as text files for a portable set-up capable of running on virtually any PHP host.
To allow new threads without requiring an image, see the Text Board Mode page.
For demos see the TinyIB Installations page.
Features
- GIF, JPG, PNG, SWF and WebA/WebM upload.
- Reference links >>###
- Delete post via password.
- Management panel:
- Administrators and moderators use separate passwords.
- Moderators are only able to delete posts.
- Ban offensive/abusive posters across all boards.
- Post using raw HTML.
- Upgrade automatically when installed via git. (Tested on Linux only)
- Administrators and moderators use separate passwords.
Installing
- Verify the following requirements are met:
- PHP 4 or higher is installed.
- GD Image Processing Library is installed.
- This library is installed by default on most hosts.
- CD to the directory you wish to install TinyIB.
- Run the command:
git clone git://github.com/tslocum/TinyIB.git ./
- Copy settings.default.php to settings.php
- Configure settings.php
- To remove the play icon from .SWF/.WebM thumbnails, delete or rename video_overlay.png.
- To allow WebA/WebM upload:
- Ensure your web host is running Linux.
- Install mediainfo and ffmpegthumbnailer. On Ubuntu, run
sudo apt-get install mediainfo ffmpegthumbnailer
. - Set
TINYIB_WEBM
totrue
.
- CHMOD write permissions to these directories:
- ./ (the directory containing TinyIB)
- ./src/
- ./thumb/
- ./res/
- ./inc/flatfile/ (only if you use flat file for the database)
- Navigate your browser to imgboard.php and the following will take place:
- The database structure will be created.
- Directories will be verified to be writable.
- The file index.html will be created containing the new image board.
Moderating
- If you are not logged in already, log in to the management panel by clicking [Manage].
- On the board, tick the checkbox next to the offending post.
- Scroll to the bottom of the page.
- Click Delete with the password field blank.
- From this page you are able to delete the post and/or ban the author.
Updating
- Obtain the latest release.
- If you installed via Git, run the following command in TinyIB's directory:
git pull
- Otherwise, download and extract a zipped archive.
- If you installed via Git, run the following command in TinyIB's directory:
- Note which files were modified.
- If settings.default.php was updated, migrate the changes to settings.php
- Take care to not change the value of TINYIB_TRIPSEED, as it would result in different secure tripcodes.
- If other files were updated, and you have made changes yourself:
- Visit GitHub and review the changes made in the update.
- Ensure the update does not interfere with your changes.
- If settings.default.php was updated, migrate the changes to settings.php
Migrating
TinyIB includes a database migration tool, which currently only supports migrating from flat file to MySQL. While the migration is in progress, visitors will not be able to create or delete posts.
- Edit settings.php
- Ensure
TINYIB_DBMODE
is still set toflatfile
. - Set
TINYIB_DBMIGRATE
totrue
. - Configure all MySQL-related settings.
- Ensure
- Open the management panel.
- Click Migrate Database
- Click Start the migration
- If the migration was successful:
- Edit settings.php
- Set
TINYIB_DBMODE
tomysqli
. - Set
TINYIB_DBMIGRATE
tofalse
.
- Set
- Click Rebuild All and ensure the board still looks the way it should.
- Edit settings.php
If there was a warning about AUTO_INCREMENT not being updated, you'll need to update it manually via a more privileged MySQL user. Run the following query for one or both of the tables, dependant of the warnings you were issued:
ALTER TABLE (table name) AUTO_INCREMENT = (value to be set)
Support
Contact tslocum@gmail.com
Contributing
- Read the GitHub Forking Guide.
- Fork TinyIB.
- Commit code changes to your forked repository.
- Submit a pull request describing your modifications.