Support
- Advanced Backup
- Client Side
- Cloud Enterprise
- ColdFusion
- Control Panel
- cPanel
- Customer Portal
- DNS Information
- Dedicated Servers
- DirectAdmin
- Domain Name
- dotDefender
- Dreamweaver
- FileCatalyst
- Front Page
- FTP
- General Information
- Hosted Exchange & SharePoint
- IIS6
- IIS7
- Juniper Netscreen Firewalls
- Linux
- Bind Multiple IP Addresses to a Single Network Interface Card (NIC)
- Clear Memory Cache on Linux Server
- Set the time on a Linux server
- Check Disk Usage in Linux
- Add Custom SpamAssassin Rules
- Install OSSEC on a Linux server
- Define the Default Document Order for a Shared Linux Server
- Administer a Website Using Webmin
- Use a Redirect Script in PHP
- Upgrade PHP on a Linux Server
- Install phpMyAdmin on a Linux server
- Add a Redirect Script to Your .htaccess File
- Install the Mumble VoIP Server to Redhat or CentOS
- Add PHP Extensions with No Control Panel or Plesk
- How To Update Linux Packages Using Webmin
- Evaluate Disk Usage on Linux Plesk Server
- How to monitor Bandwidth with VNstat
- Bind IPs to a server in Linux
- Using the Htaccess File to Block IP Access
- Using The Htaccess File for PHP Directives
- Search for a file via SSH
- Install Tomcat on a Linux Server
- Install the Railo CFML Server in Linux
- Tuning the Apache Prefork MPM
- Adding FTP Users For VSFTP
- Installing htop
- Enable Apache mod_status
- Evaluate Disk Usage on Linux Cpanel Server
- Locate Newly Created Files in Linux
- Configure Keep Alives on SSH Server in Linux
- Adjusting the Amount of Swap
- How to Disable IPv6 For Redhat and Centos
- Enable and Use the Apache Info Module
- Install NCDU on a Linux Server
- Manage the Qmail queue with qmHandle
- Retaining File Permissions While Using SCP
- How To Compress And Uncompress Files
- Installing Freetds For Linux
- Create Search Engine Friendly URLs with mod_rewrite
- Adding Users To A Usergroup
- Installing Vim
- Use TCP Variable tcp_syncookies to prevent "syn flood attack"
- How To Limit Process CPU Usage
- Install and Configure the Cherokee Web Server on Linux
- Installing Python 3 on CentOS/Redhat 5.x From Source
- Configure Syntax Highlighting in Vim
- Install and Configure the Nginx Web Server on Linux
- Set Hostname
- Using Tmux
- MySQL Slow Query Logging
- Using the Linux Uptime Command
- Using sar to Monitor System Performance
- Compile Software On Linux
- Using the Linux Man Command
- Mounting NFS Shares
- Move and Copy Files within Linux
- Configure NFS Server Shares
- Software Management with RPM and Yum
- Update the Webmin Control Panel
- Viewing Live Bandwidth with iftop
- Using GNU Screen
- Sshwindows
- Sshmac
- Directorystructure
- Errorcheck
- vi Text Editor
- Find Heaviest Email Users of Postfix MTA's Deferred Spool
- Common Rewrite Rules for .htaccess
- Turn on directory listing in Linux
- Redirect non-www URLs to www URLs using a .htaccess file
- Force Visitor Browser to use SSL in Apache
- Apache Error Logging
- Password-less Login Through SSH Linux To Linux
- Log SSH Sessions with Putty
- SSH Server on Alternative Port
- SSH Server as Secure SOCKS Proxy
- Install the PHP Process Manager (php-fpm)
- Configure Apache to Use PHP-FPM
- Configure Nginx to Use PHP-FPM
- Cgiscripts
- Htaccess
- Linux Faq
- Phpmail
- Phpmailer
- Phpsqlinjection
- Phpversion
- Sendmail
- Add a Redirect Script to your Ruby on Rails Application
- Use a CGI PERL Redirect Script
- List Server
- MIVA Merchant
- MySQL
- Patching / Server Updates
- phpMyAdmin
- Plesk
- Policies and Procedures
- Premium Spam Filtering
- Programming
- Ruby on Rails
- Search Engine Submission
- SharePoint 3
- SharePoint 2010
- SiteDesigner
- SmarterMail 3
- SmarterMail 4
- SmarterMail 5
- SmarterMail 6
- SmarterMail 7
- SmarterStats
- SmarterTrack
- SQL Server
- Secure Socket Layer (SSL)
- Uploading Your Website
- Video Tutorials
- Windows Server 2003
- Windows Server 2008
- Web Design
- WordPress
- Advanced Monitoring
- MediaWiki
- Enkompass
- Microsoft Outlook 2010
- Android
- Outlook Web Access
- Critical Availability Service
- NAS Data Transfer
- Customer Portal Demos
- Joomla
- Moodle
- Cloud Dedicated
- Gallery CMS
- phpBB
- Standard Monitoring
- Righteous Restore
- NAS (Network Attached Storage)
- Networking
- SmarterMail 8
- PCI Security Scan
- LinkTiger
- Windows Cloud VPS
- Linux Cloud VPS
- Linux VPS
- Windows VPS
- Hyper V
- ENSIM
- Alert Logic
- Webmin
- e107
- Vbulletin
- VPN
- Visual Vault
- Mozilla Thunderbird
- PyroCMS
- Active Directory
- Vmware Related
- Drupal
Create Search Engine Friendly URLs with mod_rewrite
Search engine friendly URLs avoid the use of symbols when passing URL variables. Providing clean URLs adds to the user experience by removing characters neither your visitors nor search engines want to see. In this article you will learn how to turn this http://domainname.com/forum.php?id=1 into http://domainname.com/forum/id/1/ using mod_rewrite.
Introduction to mod_rewrite
Mod_rewrite is an apache module that allows URLs to be interrupted before the server processes them. This buffer allows you to create human readable URLs that can be converted back into complex parameters by the server.
Installation
Mod_rewrite can be used on any Hosting.com Linux Platform Services. Mod_rewrite is included in the Apache 2 development package and can be installed on CentOS and Redhat using yum install apache2-devel. Mod_rewrite is installed with apt-get apache2 on Ubuntu but is not enabled by default. Run a2enmod rewrite to enable it.
Usage
Mod_rewrite can be used to perform very complex tasks; however, we can keep things very simple to create search engine friendly URLs. Your mod_rewrite rules can be placed either in the apache configuration file or in an .htaccess file*.
Below is all you need to turn this http://domainname.com/forum.php?id=1 into http://domainname.com/forum/id/1/.
Options +FollowSymLinks
RewriteEngine on
RewriteRule forum/(.*)/(.*)/$ /forum.php?$1=$2
*Additional steps will be required if placing the code in .htaccess results in error. Adding this to the apache site container will allow it to work from .htaccess.
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
Relative Paths
Once you start using mod_rewrite you will most likely run into broken links using relative paths. This side effect happens because a relative path starts where the URL stops. Referencing anything after a modified URL will typically result in the file not being found. To prevent broken images, CSS and JS files always refer to them with absolute paths. In most cases you can simply change css/style.css to /css/style.css.
