

Seek geek with expert knowledge in WP3 + Apache2 mod_rewrite - dxjones

I am seeking a geek with expert knowledge in WordPress 3.0.1 and Apache2 mod_rewrite syntax (.htaccess) to help me get past a roadblock in deploying my web app (with a WordPress front-end).<p>I have posted my question on stackoverflow.com ( http://bit.ly/9UeChD
 ) and wordpress.com ( http://bit.ly/aTSo21
 ), but still no joy.<p>Hoping someone on HN has what it takes to rewrite "http://site.com/app/alpha/beta" to "http://site.com/app/?a=alpha&#38;b=beta" and then let the Wordpress rules route it through index.php to the "app" page, which can pull the parameters from $_GET.
======
pavel_lishin
Off the top of my head, maybe adding

    
    
      RewriteRule ^app/([^/]+)/([^/]+) app/?a=$1&b=&2 [QSA,L]
    

before the last rewrite rule?

~~~
dxjones
I tried that, and it gets me part way there, but the internals of the
WordPress index.php come into play to prevent this being a solution.

1\. WordPress wants the "Page" name to come last, so I followed your
suggestion, but with "app" moved to the end. Same idea as your rule, but
rearranged. See .htaccess appended below.

2\. The REQUEST_URI is "alpha/beta/app", and the QUERY_STRING
"p1=alpha&p2=beta", ...

but the WordPress index.php comes into play and seems to do a REDIRECT (so my
app never gets a chance to run)

so that REQUEST_URI becomes "app" and QUERY_STRING is empty. My app code runs,
but now it is too late; the parameters are gone.

Any further suggestions?

    
    
      # .htaccess
      
      <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index\.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^([^/]+)/([^/]+)/app$ /app/?p1=$1&p2=$2 [QSA,L]
      </IfModule>
      
      # BEGIN WordPress
      <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteBase /
      RewriteRule ^index\.php$ - [L]
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
      </IfModule>
      
      # END WordPress

~~~
pavel_lishin
What do you mean by "Page name"?

Also, I should go ahead and tell you that I know very very little about
Wordpress, and how it handles things. Would it be feasible to move this part
of your project away from Wordpress?

~~~
dxjones
In WordPress, ... in addition to your (blog) "Posts" you can create a "Page".
The typical example would be an "About" page.

In my case, I created a paged called "app". What is nice about this is I can
use WordPress as a content management system, I can change Themes easily, etc.
... but embedded inside the page I can put vanilla PHP code.

