2011-08-03 43 views
0

我想修改一个URL和变量,我不知道如果我遇到语法错误或只是使用错误的表达式。Apache Mod_Rewrite正则表达式的帮助

我试图把这个:

http://www.mydomain.com/trainings/12345

这个?

http://www.mydomain.com/remote.php?page=abcde&var=12345

的remote.php页= ABCDE是静态的,永远不会改变。所以只需要传递该变量并去掉URL中的/训练。 12345将改变。

我已经试过,没有运气以下:

RewriteCond %{QUERY_STRING} /trainings/(.*) 
    RewriteRule remote.php?page=abcde remote.php?page=abcde&var=%1 [QSA,L] 

我也试过上述的一些变化,但没有成功。

我很确定我使用了错误的语法。任何帮助深表感谢!!

回答

2

这应该工作

Options +FollowSymlinks 
RewriteEngine On 
RewriteBase/


RewriteRule ^trainings/([^/]+) remote.php?page=abcde&var=$1 [QSA] 
+0

奇怪 - 我得到一个HTTP错误404 - 文件或目录未找到。 –

+0

我的.htaccess位于我的网站的根目录下,这个网址可以吗?看起来好像它实际上是在寻找那个目录? –

+0

像冠军一样工作。我必须绕过我的.htaccess并添加覆盖。上面提供的正则表达式很棒。一个问题 - 它不会更改URL,重写被屏蔽 - 是否有方法显示重写? –