htaccess modrewrite problem with rewriting url with- dashes solution

I was getting frustrated with trying to write a simple URL like this:

/example-withdash

I used the htaccess code like this:

Rewriterule ^example-withdash$ / [R=301]

I also tried escaping the dash which I thought should have treated it as a literal but that didn't work either:

Rewriterule ^example\-withdash$ / [R=301]

But it wouldn't work, apparently the "-" dash means don't substitute, so this means in plain Engilsh that my rule is not treated as intended or expected.

- (dash)
A dash indicates that no substitution should be performed (the existing path is passed through untouched). This is used when a flag (see below) needs to be applied without changing the path.
  http://httpd.apache.org/docs/current/mod/mod_rewrite.html

The Solution:

Put brackets around the rewrite rule ()

Rewriterule ^(example-withdash)$ / [R=301]

Now it works, it's very simple but quite frustrating when you don't know this.  I actually think Apache should have a debug mode or some switch to run an .htaccess file and verbosely output the interpretation of each rule.


Tags:

htaccess, modrewrite, rewriting, url, dashes, solutioni, frustrated, withdash, rewriterule, escaping, dash, literal, didn, wouldn, quot, substitute, engilsh, indicates, substitution, performed, existing, untouched, applied, http, httpd, apache, org, docs, mod, mod_rewrite, html, brackets, rewrite, frustrating, debug, mode, verbosely, output, interpretation,

Latest Articles

  • Microsoft Teams Linux - Calendar Doesn't Work Missed Meetings!
  • Scanner not working in Linux Ubuntu Fedora Mint Debian over the network? Use sane-airscan!
  • How To Boot, Install and Run Windows 2000 on QEMU-KVM
  • bash cannot execute permission denied
  • Huion and Wacom Tablets How To Install in Linux Mint / Ubuntu and make the stylus work properly
  • ffmpeg how to cut certain parts of video out
  • ffmpeg how to concat and join two video clips
  • mencoder instead of ffmpeg to join or concatenate video files with different audio streams
  • Linux How To Stop Missing Drive from Halting Boot Process in fstab
  • How To Replace Audio Track of Video using ffmpeg
  • qemu-img convert formats vdi vmdk raw qcow2
  • Linux and Windows Dual Boot Crazy Time Issues
  • dynagen / dynamips 100% high CPU usage solution - how to set the idlepc value
  • How To Setup a Cisco CME (Cisco Manager Express) Virtual Router under Linux using dynamips and dynagen
  • Linux Mint Ubuntu Debian CentOS Dual Boot Install Issues
  • Linux Mint Ubuntu Debian Centos RHEL no sound solution
  • Linux Mint/Debian/Ubuntu/Centos Installer black grub screen and blank screen after trying to boot installer or main OS
  • Linux Mint Dual Boot Install Avoid Wiping our your Main C: drive /dev/sda MBR and EFI
  • QEMU-KVM soundhw deprecated how to enable sound in QEMU 4.x series
  • Virtualbox Error Cannot register the hard disk because a hard disk with UUID already exists solution