µTopic - Micro news site by AnOldMan
Description:
- Simple News / Opinion site with page ranking
- Lightweight at ~ 200kb
- Secure - Hashed challenge/response login
- Flexible - can use MySQL -OR- sqLite
- Customizable - several stylesheet examples included
- Sub Topics
- Multiple vote blocking
When we wanted a simple page ranking system for opinion.anoldman.com, we spent an incredible amount of time trying scripts and CMS systems.
- Ratings scripts with any kind of administration were complicated and bulky and had little or no security.
- CMS systems were huge for the purpose intended and adding page ratings to them involved additional modules or customization.
So we created a database driven PHP page ranking engine, wrapped a secure administration module around it, and added simple CMS with stylesheets for article publication.
The result is uTopic - a truely unique, simple, secure, customizable, and LIGHTWEIGHT CMS.
Requirements:
- Server with PHP -AND- MySQL -OR- sqLite
- Username, password, and database name from your server if using MySQL
- These files
Installation:
- Unzip files
- Edit admin/config.php to match your site
- Upload files to server
- utopic.sql not required
- StyleSheetTest.htm optional
- readme not required
- utopic.s3db not required for MySQL
- Set permissions for content folder to be writeable - CHMOD 666 - if you wish to edit or publish to files from administration
- (for sqLite, you may also need to set permissions for utopic.s3db in the admin folder)
- For MySQL - go to http://www.yoursite.com/admin/install.php and create admin account
(there is an sql file included if you wish to run that instead)
- Delete install.php file - for security purposes it stops working , but it is now unneeded
Using:
- Adding content
- Upload new articles to content folder
- it is recommended you name file something.htm and test in your browser before uploading
- REMOVE <head> SECTION and any <body> TAGS - many page editors add them "for" you
- filename format is topicX.php where X is the article number set in administration
- file format is text/html - plain text works, most HTML tags will work also
- Upload icon (50x50) to content/graphics folder - there is a readme there for more info
- Go to admin/login.php and add article
- If you create article here, paste html into window or type it out
- For manual entry, remember that you are typing html - returns, extra spaces, and special characters like "<>&" will not behave like you expect them to - look at this file from administration if you are unfamiliar with HTML
- Special characters are expressed in HTML like this - < equals <
- You can also link html pages - they will not be tracked or ranked
- Go to your page and test it
Security:
- Site uses CAPTCHA to verify login attempts.
- Username and password are hashed - many sites transmit your login in plain text, µTopic hashes your password with a unique seed EVERY login - your password cannot be intercepted. (this is referred to as challenge-response)
- Input checks to avoid SQL injections
- Login/admin files can be renamed
- Excessive login attempts tracked and blocked
- Most files cannot be called directly - even articles can be blocked from direct access (see example in content folder)
TODO:
- Currently you cannot reset ratings count. For now, simply delete article from administration and re-enter it
- Only one admin account accessible from admin panel. If you forget your details or want additional accounts, you will have to use SQL admin (see sql file for example)
- StyleSheets - need to make site even more customizable
|