Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.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
Php mod_重写的问题_Php_Apache_Mod Rewrite - Fatal编程技术网

Php mod_重写的问题

Php mod_重写的问题,php,apache,mod-rewrite,Php,Apache,Mod Rewrite,最初我有以下.htaccess文件: php_value display_errors 1 php_value error_reporting 7 AddDefaultCharset utf-8 Options -Indexes <Files ~ ".*\.(info|tpl)$"> Order allow,deny Deny from all </Files> RewriteEngine On RewriteBase / RewriteCond %

最初我有以下.htaccess文件:

php_value display_errors 1
php_value error_reporting 7

AddDefaultCharset utf-8

Options -Indexes
<Files ~ ".*\.(info|tpl)$">
    Order allow,deny
    Deny from all
</Files>

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php/$1 [L,QSA]
我试图写入重写日志,这再次触发了500服务器错误

帮点忙?先谢谢你

附言


正如你的前任所建议的那样

<Files ~ ".*\.(info|tpl)$">

您只允许访问.info和.tpl文件。我这里有什么不对劲吗


编辑:在意识到我的错误时发表了评论。

您应该查看apache日志-错误将在那里,您将知道以后要修复什么。

看起来PHP试图以空路径打开文件,因此您尝试访问的PHP脚本中显然存在一些错误。只需检查访问日志中出现此错误的URL,然后尝试修复PHP脚本。

它显示了一个PHP警告,这让我相信问题出在index.PHP中,你确定不是吗?@Giorgi:PHP警告表示脚本试图访问超出允许路径的文件。阅读更多。至于重写规则,请尝试添加重定向鞭毛([R]),这样您就可以自己查看重写是否有效。您不需要[QSA]标志,因为没有设置任何查询字符串。我的错。刚刚注意到所有人都否认了。这可能是因为指令。apache文档建议在处理多个文件时使用。你能试着检查一下吗?试过了,同样的事情也会发生。生成open_basedir错误,我认为我检查的open_basedir有问题,它显示:/home/:/usr/lib/php:/usr/local/lib/php:/tmp/:/usr/local/:/usr/bin我也应该尝试添加/home/mydomain/吗?我建议您尝试到您家的完整路径,而不是~那里。在某些托管环境中,~可能不受支持。
cPanel 11.24.5-STABLE (Build: 38506)
Apache version 2.2.15 (Unix)
MySQL version 5.0.85-community
PHP version 5.2.9
Operating system Linux

Apache/2.2.15 (Unix) mod_ssl/2.2.15 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_fcgid/2.3.5
<Files ~ ".*\.(info|tpl)$">