Appache RewriteRule问题
然后将其重定向到 http://web/cms/user_detail.php?id=74&contents_id=41245
可是RewriteRule没起作用,报404错误
Not Found
The requested URL /cms/user_detail/74/41254/ was not found on this server.
这是为什么呢?
httpd.conf的相关配置如下,请问还缺了什么配置吗?
---------------------------------------------------------------------------
LoadModule rewrite_module modules/mod_rewrite.so
Options FollowSymLinks
AllowOverride All
Order deny,allow
Deny from all
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
ServerAdmin mike@sina.com
DocumentRoot D:\webroot
DirectoryIndex index.html index.htm index.php
ServerName web
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/user_detail/([0-9]+)/([0-9]+)/?$
RewriteRule ^(.*)$ /user_detail.php?id=%1&contents_id=%2
回复讨论(解决方案)
第一次发关于php的帖子,老半天了,竟然一个回复的人都没,哎
没有找到页面,你是不是用的框架,如果是的话看一下路由正则匹配
没有找到页面,你是不是用的框架,如果是的话看一下路由正则匹配
看来是高人啊,拜一个先,我用了cake php
请教下路由正则匹配,如何查看,在哪配置?
我用的环境是windows+PHP集成环境CoreAMP.exe
另外我这httpd.conf的相关配置有错吗?
首先,把你的网站根目录定位成cms,要不就不要用.conf文件,在cms文件夹中用.htaccess
然后再试试这个(删除你原来的cond和rule):
RewriteRule /user_detail/([0-9]+)/([0-9]+)$ /user_detail.php?id=%1&contents_id=%2 [QSA,L]
没有找到页面,你是不是用的框架,如果是的话看一下路由正则匹配
我routes.php是这样子的:
$Route->connect('/', array('controller' => 'top', 'action' => 'index'));
$Route->connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
$Route->connect('/tests', array('controller' => 'tests', 'action' => 'index'));
?>
要如何修改?
首先,把你的网站根目录定位成cms,要不就不要用.conf文件,在cms文件夹中用.htaccess
然后再试试这个(删除你原来的cond和rule):
XML code
RewriteRule /user_detail/([0-9]+)/([0-9]+)$ /user_detail.php?id=%1&contents_id=%2 [QSA,L]
我把hconf文件里的删除了,然后我的.htaccess文件这么写的,还是不行
RewriteEngine On
RewriteCond %{HTTPS} on [NC]
RewriteRule (.*) http://%{SERVER_NAME}%{REQUEST_URI} [R,L]
RewriteRule /user_detail/([0-9]+)/([0-9]+)$ /user_detail.php?id=%1&contents_id=%2 [QSA,L]
唉,又是自己搞定了,万能的坛子,没起作用啊
RewriteCond %{HTTPS} on [NC] RewriteRule (.*) http://%{SERVER_NAME}%{REQUEST_URI} [R,L]
这两句是做啥的,不怕麻烦呀,直接删除就好了,还敢加flag L...
楼主您好,我看了你之前关于点击按钮添加input控件的帖子
有些问题想请教,麻烦可以留下QQ什么的么
或者相互关注,发私信?