我在PHP中关于重定向的一些问题,我用的.htaccess这个,但没有成功 我有什么htaccess的是以下2个网址:重定向通过在PHP
http://localhost/PROJECT_NAME/USERNAME/348
http://localhost/PROJECT_NAME/USERNAME
什么我想在这里是:
1)如果请求从
http://localhost/PROJECT_NAME/USERNAME/111
然后来到它应该去:
http://localhost/PROJECT_NAME/index.php
2)如果请求从
http://localhost/PROJECT_NAME/USERNAME
来到那么就应该去:
http://localhost/PROJECT_NAME/detail.php
我试了一下:
RewriteRule /(\w+)$ detail.php?id=$1 [L]
RewriteRule /(\w+)$ index.php [L]
RewriteRule /$ detail.php?id=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !index.php
RewriteCond %{REQUEST_URI} !(.*)/$
没有成功在此之后CEED它工作得很好指数而不是详细信息页面,请提前
Randheer
非常感谢您的回复。 我想上面的选项,但它没有工作 的主要问题是与以下网址: 的http://本地主机/ PROJECT_NAME/USERNAME 它不重定向到“detail.php” –
页@RandheerSinghChouhan数事情:1.其他规则是否正常工作?如果没有,那么'RewriteEngine On'出现在这些行之前? 2.您尝试了以上哪个版本的代码? 3.这个.htaccess文件位于哪个路径?另外,浏览器内部不应该发生重定向 - 这些规则的目的是*重写*将请求文件指向Apache的请求(对用户透明)。如果您想要发出客户端重定向(例如响应代码301或302),则需要相应地使用“[R]”或“[R = 301]”标志。 – justbeez