我有一个重写规则,允许我能够拥有这样的网址..
http://example.com/randyt
并将其转换为
http://example.com/?aff=randyt
然而,它正在工作,我还有其他需要使用的链接,例如....
example.com/members/aff/go/randyt
example.com/members
example.com/members/signup
等等。重写规则我忽略了那些网址,只是去了 example.com
请帮我添加一些内容,这样就不会忽略任何包含/ members或/ members / ....的网址。
以下是我现在使用的代码......
RewriteEngine On
RewriteBase /
# If the request is not for a valid directory
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is not for a valid file
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.+) ?aff=$1 [L,QSA]
对于我在这里的新评论部分感到抱歉lol。
所以这里是上面的代码,其中添加了有人建议的代码
RewriteEngine On
RewriteBase /
# If the request is not for a valid directory
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is not for a valid file
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.+) ?aff=$1 [L,QSA]
RewriteCond %{REQUEST_URI} ^/members
RewriteRule . - [L]
当我尝试使用扩展的URL时,它仍会返回到根网址,只显示根目录中的index.php。
当有人使用这样的网址时....
example.com/members/aff/go/randyt
我需要它使用该联盟代码留在会员目录中。目前的计划应该照顾好。
这是成员目录中的.htaccess代码
<IfModule mod_rewrite.c>
RewriteEngine on
# RewriteBase /members
RewriteRule ^public public.php [L]
RewriteRule ^js.php js.php [L]
RewriteRule !\.(js|ico|gif|jpg|png|css|swf|csv|html)$ index.php
</IfModule>
<IfModule mod_php5.c>
# php_flag magic_quotes_gpc off
</IfModule>
该代码是由我购买该程序的公司预先编写的。
总而言之,我需要做两件不同的事情......
如果有人使用:
example.com/randyt (randyt can be any username)
它需要留在example.com上显示该页面(index.php文件)
如果有人使用:
example.com/members/aff/go/randyt (again randyt can be any username)
它需要保留在成员目录中并使用购买的脚本。
答案 0 :(得分:0)
您可以为.htaccess
添加条件RewriteCond %{REQUEST_URI} ^/members
RewriteRule . - [L]
此条件将检查请求的URI是否包含以/ member开头的字符串,然后它将不变地传递到其目标。
答案 1 :(得分:0)
在/members/.htaccess
中尝试此规则:
DirectoryIndex index.php
RewriteEngine on
RewriteBase /members/
RewriteRule ^public/?$ public.php [L,NC]
# If the request is not for a valid directory
RewriteCond %{REQUEST_FILENAME} !-d
# If the request is not for a valid file
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]