我已经将一些php脚本上传到我的服务器下的/ php目录和子目录。
在终端中使用我的root用户并运行php file.php
时,它会完美地执行它,但是当尝试通过浏览器访问同一个文件时 - 没有任何反应......
我想这与权限有关。
我已经尝试了chmod 755 phpdirectory
,但它不起作用..
我还应该做些什么才能让浏览器用户能够运行php脚本?
更新 我正在使用带有apache和Direct Admin的FreeBsd系统。 有人可以指导我去哪里查看设置吗?
答案 0 :(得分:0)
Usualy对文件的所有webb访问都是通过特定用户(例如www-data)完成的,以便通过web www-data需要访问该代码才能访问该文件。如何设置取决于服务器运行的系统。
还需要正确设置服务器document_root。您执行此操作的位置还取决于您正在运行的服务器。
更新问题后编辑。
在apache中,这通常通过文件/ etc / apache / sites-avalible / your_site来完成 如果服务器只提供一个页面,您可以在http.conf
中执行此操作答案 1 :(得分:0)
检查httpd.conf文件中的用户指令是否与用于运行PHP脚本的用户相同。
答案 2 :(得分:0)
您需要确保您的PHP脚本具有与在Apache配置中配置的用户和组相同的用户和组(CentOS 6.4中的/etc/httpd/httpd.conf)。
# User/Group: The name (or #number) of the user/group to run httpd as.
User apache
Group apache
检查PHP目录和文件的所有者和组。在这种情况下,所有者和组(root / root)与Apache User和Group不同。
# ls -alh
total 516K
drwxr-xr-x. 5 root root 4.0K Aug 29 17:57 .
drwx------. 5 root root 4.0K Jun 24 12:06 ..
-rwxr--r--. 1 root root 356K Jul 7 2012 index.php
更改PHP目录的所有者和组。使用以下命令。
# chown -R apache:apache www