XAMPP + OSX + Virtualhosts +更改httpd.conf中的用户= phpmyadmin创建数据库无法正常工作

时间:2012-07-07 03:44:50

标签: mysql macos configuration xampp virtualhost

我在OSX Lion上安装了XAMPP。 因为我想从我的某个开发文件夹中提供文件夹,所以我已将虚拟主机添加到/Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf

<VirtualHost *:80>
ServerAdmin email@gmail.com
DocumentRoot "/Users/myosxUsername/Documents/dir/dir/htdocs"
ServerName qmh
ErrorLog "logs/qmh-error_log"
CustomLog "logs/qmh-access_log" common
</VirtualHost>

并且还在hosts文件中添加了一个条目

127.0.0.1 qmh

由于访问目录/Users/myosxUsername/Documents/dir/dir/htdocs的服务器存在权限问题,我还将httpd.conf中的用户更改为myosxUsername

User myosxusername
Group admin
# previous setting below
# User nobody
# Group nobody

在这些更改之后,虚拟主机可以正常工作。 问题是,当我现在使用phpmyadmin创建一个新数据库时,我收到错误消息

  

db_create.php:缺少参数:new_db

如果我将用户更改回:

User nobody
Group nobody

然后phpmyadmin工作正常,但由于权限问题,我的虚拟主机目录无法访问。

我假设我不得不告诉apache不要以某种方式使用新用户进行mysql访问?非常感谢您的帮助。感谢

1 个答案:

答案 0 :(得分:0)

请参阅phpMyAdmin FAQ(http://wiki.phpmyadmin.net/pma/FAQ_2.8

中的第2.8项
  
      
  • 在php.ini指令session.save_path和upload_tmp_dir中,如果这些目录不存在,则为只读或不可访问(f.e.   由于base_dir限制)将发生此错误。见trk      
        
    • 从软件包安装的PHP(例如rpm)可能会为假定的用户设置这些目录的权限(例如'apache')。 -   其他Web服务器的用户,例如Lighttpd,可能需要更改   这些目录的所有权(例如'lighttpd')。
    •   
    • 在Windows上,如果PHP使用的目录是session.save_path和upload_tmp_dir,它们位于主“Temp”中的某个位置   目录,你必须自己创建这些目录;与其他不同   Windows程序PHP本身不会创建它们。
    •   
  •   
  • 如果您使用Hardened-PHP(/ suhosin补丁)并将ini指令varfilter.max_request_variables设置为默认值(200)或   另一个低值,如果你的表有一个高,你可能会得到这个错误   列数。相应地调整此设置(请求限制,   感谢Klaus Dorninger提示。
  •   
  • 在config.inc.php中,尝试将$ cfg ['PmaAbsoluteUri']指令留空。另见FAQ 4.7。
  •   
  • 也许您的PHP安装很糟糕,或者您需要升级Zend Optimizer。见http://bugs.php.net/31134
  •   
  • 在php.ini指令arg_separator.input中,值为“;”会导致此错误。将其替换为“&amp ;;”。
  •   

(来自https://serverfault.com/questions/385465/phpmyadmin-missing-parameter的提示)