.htaccess 内部服务器错误-多深度URL字符串
我目前正在为我的网站使用此.htaccess文件.htaccess 内部服务器错误-多深度URL字符串,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我目前正在为我的网站使用此.htaccess文件 RewriteEngine On RewriteRule ^u/([^/]+)/[^/]+)/[^/]+)/?$ /index.php?username=$1&content=$2&type=$3 [L,QSA] RewriteRule ^u/([^/]+)/[^/]+)/?$ /index.php?username=$1&content=$2 [L,QSA] RewriteRule ^u/([^/]+)/?$ /inde
RewriteEngine On
RewriteRule ^u/([^/]+)/[^/]+)/[^/]+)/?$ /index.php?username=$1&content=$2&type=$3 [L,QSA]
RewriteRule ^u/([^/]+)/[^/]+)/?$ /index.php?username=$1&content=$2 [L,QSA]
RewriteRule ^u/([^/]+)/?$ /index.php?username=$1 [L,QSA]
但是我得到了错误
服务器遇到内部错误或配置错误,无法完成您的请求
我想做的是打开这个url
http://www.site.com/users/index.php?username=$1&content=$2&type=$3
进入
您缺少一些开括号:
RewriteRule ^u/([^/]+)/[^/]+)/[^/]+)/?$ /index.php?username=$1&content=$2&type=$3 [L,QSA]
RewriteRule ^u/([^/]+)/[^/]+)/?$ /index.php?username=$1&content=$2 [L,QSA]
RewriteRule ^u/([^/]+)/?$ /index.php?username=$1 [L,QSA]
需要:
# missing "(" here ----v and --v
RewriteRule ^u/([^/]+)/([^/]+)/([^/]+)/?$ /index.php?username=$1&content=$2&type=$3 [L,QSA]
RewriteRule ^u/([^/]+)/([^/]+)/?$ /index.php?username=$1&content=$2 [L,QSA]
RewriteRule ^u/([^/]+)/?$ /index.php?username=$1 [L,QSA]
另外,如果您希望您的URL看起来像
http://www.site.com/users/username/followers/newest
,将开头的^u/
改为^users/
哈哈,原来是你为我写这封信的,真奇怪。我打算把这个放在用户/文件夹中,我应该在开头放什么?@user1527354你是对的,不知道我的另一个答案(我已经编辑过)中他们是如何丢失的。如果要将其放入/users/
目录,请确保从regexp中删除^u/
,从目标中删除前导的/
,并在规则上方添加一个RewriteBase/users/
。非常感谢。但是当我在我的网站上使用.htaccess时,所有的.css都被搞砸了。您以前经历过这种情况吗?所有链接的相对URI基础已从/
(通过/index.php
)更改为/u/something/something/something
,因此您需要将
添加到页面标题中。或者将css/js/image/etc链接设置为绝对链接。
# missing "(" here ----v and --v
RewriteRule ^u/([^/]+)/([^/]+)/([^/]+)/?$ /index.php?username=$1&content=$2&type=$3 [L,QSA]
RewriteRule ^u/([^/]+)/([^/]+)/?$ /index.php?username=$1&content=$2 [L,QSA]
RewriteRule ^u/([^/]+)/?$ /index.php?username=$1 [L,QSA]