我一直试图让我的.htaccess文件中的mod_rewrite在过去的几个小时内工作,但我似乎无法将它拉下来。 .htaccess文件肯定可以在我的服务器上运行,因为我之前使用过它们。
我尝试使用this generator重写它并使用this tool以及我的服务器进行测试。
网址
我需要转
http://someurl.com/news-detail.html?id=10&news=this-is-an-article
到
http://someurl.com/news/10/this-is-an-article
或
http://someurl.com/10/news/this-is-an-article
重写
我试过了:
RewriteEngine On
RewriteRule ^([^/]*)/news/([^/]*)$ /news-detail.html?id=$1&news=$2 [L]
和
RewriteEngine on
RewriteRule /(.*)/news/(.*) news-detail.html?id=$1&news=$2 [L]
和
RewriteEngine on
RewriteRule news/([0-9]+)/([a-zA-Z_]+)$ news-detail.html?id=$1&news=$2 [L]
和其他许多人。
我希望有人可以帮助我。
答案 0 :(得分:2)
请在.htaccess文件中检查/添加RewriteBase。 还要检查是否允许htaccess重写。 语法在
之下RewriteEngine on
RewriteBase /flodername/
RewriteRule ^urlinbrowser/(.*)/(.*)$ filename.php?first_param=$1&secondparam=$2 [L]
答案 1 :(得分:1)
在root .htaccess中保留这样的规则:
RewriteEngine On
RewriteBase /dev/hoig/
RewriteCond %{THE_REQUEST} /news-detail\.html\?id=([^\s&]+)&news=([^\s&]+) [NC]
RewriteRule ^ %1/news/%2? [R=302,L]
RewriteRule ^([^/]+)/news/([^/]+)/?$ news-detail.html?id=$1&news=$2 [L,NC,QSA]
这将支持漂亮网址的/10/news/this-is-an-article
URI结构。