Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess为不存在的目录抛出500个带重写条件的内部错误_.htaccess - Fatal编程技术网

.htaccess为不存在的目录抛出500个带重写条件的内部错误

.htaccess为不存在的目录抛出500个带重写条件的内部错误,.htaccess,.htaccess,我正在尝试使用.htaccess创建一个类似facebook的用户配置文件页面 即。http://example.com/ 我会打电话给你的http://example.com/sites// 使用以下代码: Options +FollowSymLinks RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^/]+)/?(.*)$ site

我正在尝试使用.htaccess创建一个类似facebook的用户配置文件页面 即。http://example.com/ 我会打电话给你的http://example.com/sites// 使用以下代码:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?(.*)$ sites/$1/$2 [NC,L]

Options -Indexes

ErrorDocument 404 /missing.html
ErrorDocument 403 /forbidden.html
当文件夹sites/存在时,它可以很好地工作,但当它不存在时,它会抛出500个内部错误。我在互联网上搜索过,但无法超越这一点。有人能帮忙吗。 我是否可以拥有一个包含所有现有文件夹的文本文件,并以某种方式使用该文件在.htaccess中生成一个列表


提前谢谢!!:)

您的重写规则正在循环。正则表达式
^([^/]+)/?(.*)$
与重写的URI
sites/something/something
匹配,并且无限循环(因此您的URI开始看起来像:
sites/sites/sites/sites/sites/sites/sites/something/something
等)

调整正则表达式,使其与第一个
([^/]+)/?
表达式后面的内容不完全匹配,或者添加一个附加条件:

RewriteCond %{REQUEST_URI} !^/sites/

你的重写规则正在循环。正则表达式
^([^/]+)/?(.*)$
与重写的URI
sites/something/something
匹配,并且无限循环(因此您的URI开始看起来像:
sites/sites/sites/sites/sites/sites/sites/something/something
等)

调整正则表达式,使其与第一个
([^/]+)/?
表达式后面的内容不完全匹配,或者添加一个附加条件:

RewriteCond %{REQUEST_URI} !^/sites/

什么错误?查看web服务器的错误日志,看看实际问题是什么。什么错误?查看web服务器的错误日志,了解实际问题是什么。如果我想在原始url中添加正斜杠:example.com/那么它将成为example.com//我该怎么做?如果我想在原始url中添加正斜杠:example.com/那么它将成为example.com//我该怎么做?