AWS Windows 服务器 2016 WAMP 不工作
AWS Windows Server 2016 WAMP not working
我想在 AWS EC2 Windows Server 2016 上托管我的 php 网站。我在这个过程中取得了成功,因为我可以使用 ip 或主机名访问 HTML网页,但是当我尝试创建 test.php 并在我的 PC 中查看它时,出现错误提示“找不到 404 个文件”。但是我可以通过远程在服务器端 PC 中查看 test.php。
我不确定那里是否缺少任何配置或设置,我尝试在下面标记我的所有步骤,看看是否有任何错误:
- 安装 IIS 管理器
- 在 AWS 安全组中设置端口 80
- 安装 WAMP
- 将 IIS 默认站点设置为 WAMP 工作区
这些是我的设置步骤。有没有人对此有一些想法?谢谢
正如 RiggsFolly 所建议的那样,您需要在 IIS 或 Apache 之间进行选择(WAMP 中的 'A')。如果您有 2 个服务,如 IIS 和 Apache 竞争端口 80,其中一个将无法正常启动,并且每次都不一定是相同的服务。
如果两个服务都是运行,我怀疑一个会监听机器的public IP,另一个监听环回地址(仅限本地)。
WAMP
如果您想坚持使用 WAMP,是否需要卸载或停止并禁用 IIS 服务,然后重新启动 WAMP 以确保其 Apache 接收请求。
IIS(WIMP?)
如果你想使用 IIS 来托管 Php 应用程序,它有点复杂,你可能需要卸载 WAMP,然后手动安装和配置 Php 和 MySQL .
将 Php 安装到 IIS 中非常简单:https://docs.microsoft.com/en-us/iis/application-frameworks/scenario-build-a-php-website-on-iis/configuring-step-1-install-iis-and-php
大致来说步骤是:
- 安装 IIS
- 安装 Web 平台安装程序
- 安装Php框架
对于您的数据库,您可以将 MySQL 服务器安装到您的 ec2 实例上(最新下载和说明 - https://dev.mysql.com/downloads/mysql/)。
如果实例上的 运行 MySQL 没有向世界开放端口 3306 (mysql) - 它应该只能由您管理数据库的 IP 访问。
我个人建议在 RDS 或 Aurora 中托管数据库,让 AWS 负责数据库服务器的详细信息。为数据库设置安全组时,确保只允许您的服务器访问和您拥有的任何管理 IP 地址。
我想在 AWS EC2 Windows Server 2016 上托管我的 php 网站。我在这个过程中取得了成功,因为我可以使用 ip 或主机名访问 HTML网页,但是当我尝试创建 test.php 并在我的 PC 中查看它时,出现错误提示“找不到 404 个文件”。但是我可以通过远程在服务器端 PC 中查看 test.php。
我不确定那里是否缺少任何配置或设置,我尝试在下面标记我的所有步骤,看看是否有任何错误:
- 安装 IIS 管理器
- 在 AWS 安全组中设置端口 80
- 安装 WAMP
- 将 IIS 默认站点设置为 WAMP 工作区
这些是我的设置步骤。有没有人对此有一些想法?谢谢
正如 RiggsFolly 所建议的那样,您需要在 IIS 或 Apache 之间进行选择(WAMP 中的 'A')。如果您有 2 个服务,如 IIS 和 Apache 竞争端口 80,其中一个将无法正常启动,并且每次都不一定是相同的服务。
如果两个服务都是运行,我怀疑一个会监听机器的public IP,另一个监听环回地址(仅限本地)。
WAMP
如果您想坚持使用 WAMP,是否需要卸载或停止并禁用 IIS 服务,然后重新启动 WAMP 以确保其 Apache 接收请求。
IIS(WIMP?)
如果你想使用 IIS 来托管 Php 应用程序,它有点复杂,你可能需要卸载 WAMP,然后手动安装和配置 Php 和 MySQL .
将 Php 安装到 IIS 中非常简单:https://docs.microsoft.com/en-us/iis/application-frameworks/scenario-build-a-php-website-on-iis/configuring-step-1-install-iis-and-php
大致来说步骤是:
- 安装 IIS
- 安装 Web 平台安装程序
- 安装Php框架
对于您的数据库,您可以将 MySQL 服务器安装到您的 ec2 实例上(最新下载和说明 - https://dev.mysql.com/downloads/mysql/)。 如果实例上的 运行 MySQL 没有向世界开放端口 3306 (mysql) - 它应该只能由您管理数据库的 IP 访问。
我个人建议在 RDS 或 Aurora 中托管数据库,让 AWS 负责数据库服务器的详细信息。为数据库设置安全组时,确保只允许您的服务器访问和您拥有的任何管理 IP 地址。