Chr*_*ian 10 php apache ubuntu amazon-web-services
我已经多次看到这个问题得到了回答,但大多数问题都没有得到答复,或者告诉提问者这样做:
<?php phpinfo() ?>
Run Code Online (Sandbox Code Playgroud)
在测试文件中.显然,如果这产生了预期,我不会在这里.相反,我得到404错误.
我在亚马逊上使用的是ubuntu 12.04服务器.安装Apache,安装php5,重启apache.我按照以下顺序:
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install libapache2-mod-php5
sudo /etc/init.d/apache2 restart
Run Code Online (Sandbox Code Playgroud)
前三个命令中的每一个现在都给我"apache2已经是最新版本.0升级,0新安装,0删除,3未升级"显然,替换apache2与php5和libapache2-mod-php5为其他两个.
这是告诉我安装的可靠方法,对吗?好吧,当我使用命令"top"时,php不是正在运行的服务之一,它告诉我它没有运行,对吗?
导航到IP地址给了我亚马逊的"它工作!" 页面,但导航到服务器上的任何其他页面会产生404错误.
任何帮助深表感谢.
cas*_*tis 12
查看apache配置文件.对于Debian/Ubuntu来说,他们正在/etc/apache2/sites-available/使用RedHat/CentOS /等/etc/httpd/conf.d/.如果您刚安装它,那里的文件可能已命名default.
确保其中的配置文件指向正确的文件夹,然后确保您的脚本位于那里.
你在这些文件中寻找的那条线是DocumentRoot /path/to/directory.
对于空白安装,您的php文件很可能需要进入/var/www/.
你还需要做的是找到你的php.ini文件,可能位于/etc/php5/apache2/php.ini或/etc/php.ini找到条目display_errors并切换到On.
一个很大的问题是默认情况下PHP在用户主目录中被禁用,所以如果你从〜/ public_html进行测试它就不起作用了.检查/etc/apache2/mods-enabled/php5.conf
# Running PHP scripts in user directories is disabled by default
#
# To re-enable PHP in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#<IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_flag engine Off
# </Directory>
#</IfModule>
Run Code Online (Sandbox Code Playgroud)
除了在Ubuntu中安装非常简单,因为您以前必须放入httpd.conf的所有内容都是自动完成的.