wzh789 发表于 2015-8-5 11:11:32

在apache下限制php列目录

  头几天为了解决这个,烦了好几天,现在这个解决了,新问题又来啦,还好经过摸索,总算解决了。
  
  不过目前还有个问题就是 开了php的safe_mode后,wordpress挂了,运行不起来!什么情况
  还有就是wordpress装插件的时候需要用ftp登陆,如果不用的话,是否意味着要给php写权限?怎么给呢?
  ---------------------------------------------------------------------
  
  环境:centos 5 + apache2 + php5.2+ phpMyAdmin2.11
  
  限制列php有多种方法,可以在虚拟机主机中加入 php_admin_value open_basedir=""
  如下配置
  




# ServerAdmin webmaster@dummy-host.example.com
# DocumentRoot /www/docs/dummy-host.example.com

php_admin_value open_basedir /var/www/example.com/

# ServerName dummy-host.example.com
# ErrorLog logs/dummy-host.example.com-error_log
# CustomLog logs/dummy-host.example.com-access_log common


  
  也可以在/etc/php.ini中更改
  



open_basedir = .:/tmp

  . 表示当前目录,:表示多个目录,
  
  主要是这样子配置了以后,我的phpmyadmin就出问题了
  之前访问的时候是出现输入用户名和密码的对话框的,现在直接报错
  
  Probably reason of this is that you did not create configuration file. You might want to use setup script to create one



错误
  MySQL 返回:http://cryinstall.com:81/themes/original/img/b_help.png


#1045 - Access denied for user 'root'@'localhost' (using password: NO)





大概是不能读取配置文件,而且我又把mysql的默认本地用户删除了



解决了半天,没结果。



我尝试将/usr/share/phpMyAdmin下的文件拷贝到我的网站目录下,依然出现这个问题。



后来我用   ls-l查看了一下,~哈哈 问题出现了!



/usr/share/phpMyadmin/config.inc.php是链接文件!指向 /etc/phpMyAdmin/config.inc.php!!!



难怪找不到配置文件,因为把php的读取权限限制到了当前目录下,所以无法访问到连接的文件啦。



解决方案是删除/usr/share/phpMyAdmin下的config.inc.php链接符号,拷贝/etc/phpMyAdmin的config.inc.php到

/usr/share/phpmyadmin下。~OK再次访问就正常了
页: [1]
查看完整版本: 在apache下限制php列目录