首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在apache2 - ubuntu上托管.php文件?

如何在apache2 - ubuntu上托管.php文件?
EN

Stack Overflow用户
提问于 2020-09-06 18:29:26
回答 2查看 1.1K关注 0票数 0

我正在谷歌云上托管我的成熟考试的web应用程序。所以我创建了VM (在ubuntu上运行)并在上面安装了apache2。然后我成功地安装了PHP。问题是,即使我正确安装了PHP,它也只能托管.html文件。当我尝试托管.php文件时,会出现HTTP500错误。phpinfo.php是唯一有效的文件。

代码语言:javascript
运行
复制
<?php phpinfo(); ?>

我的问题是。如何在Google cloud ubuntu上更改apache的配置?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-09-06 19:23:56

PHP是安装程序的组件,它将处理代码以显示动态内容。它可以运行脚本,连接到您的MySQL数据库以获取信息,并将处理后的内容交给您的web服务器进行显示。

同样,利用apt系统来安装PHP。此外,这次还要包含一些帮助程序包,以便PHP代码可以在Apache服务器下运行并与您的MySQL数据库对话:

代码语言:javascript
运行
复制
sudo apt install php libapache2-mod-php php-mysql

这样安装PHP应该不会有任何问题。稍后我们将对此进行测试。

在大多数情况下,您需要修改Apache在请求目录时提供文件的方式。目前,如果用户从服务器请求目录,Apache将首先查找名为index.html的文件。我们希望告诉web服务器优先选择PHP文件,因此让Apache首先查找index.php文件。

要执行此操作,请键入以下命令以在文本编辑器中使用超级用户权限打开dir.conf文件:

sudo nano /etc/apache2/mods-enabled/dir.conf如下所示:

/etc/apache2/mods-enabled/dir.conf

代码语言:javascript
运行
复制
<IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

将PHP索引文件(上面突出显示)移动到DirectoryIndex规范之后的第一个位置,如下所示:

/etc/apache2/mods-enabled/dir.conf

代码语言:javascript
运行
复制
<IfModule mod_dir.c>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

完成后,按CTRL+X键保存并关闭文件。键入Y确认保存,然后按ENTER键验证文件保存位置。

在此之后,重新启动Apache the服务器,以便识别您的更改。要执行此操作,请键入以下命令:

代码语言:javascript
运行
复制
sudo systemctl restart apache2

您还可以使用systemctl检查apache2服务的状态:

代码语言:javascript
运行
复制
sudo systemctl status apache2
票数 0
EN

Stack Overflow用户

发布于 2020-09-06 18:38:14

HTTP 500错误可能是由Apache配置问题引起的。如果您代码生成500错误,请检查以确保它们有权限在它们所在的目录中运行。默认情况下,Apache不允许执行程序。因此,请尝试使用CHMOD授予对虚拟主机目录权限。

此外,有关该错误的更多详细信息,请查看Apache错误日志,如下所示:

代码语言:javascript
运行
复制
tail -f /var/log/apache2/error.log
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63763132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档