正如大多数开发者所知,要让服务器稳定运行,需要搭建完整的软件生态链。Apache、PHP、MySQL这些基础组件如同服务器的"器官",缺一不可且需要协调运作。我们假设您已掌握服务器运作的基本原理,现在让我们聚焦在具体配置方案上。
在众多服务器架构中,LAMP 堆栈(Linux、Apache、MySQL、PHP)堪称经典配置,不仅安装简便,社区支持强大,更能承载从个人博客到中型电商平台的各种需求。
当然,技术选型永远充满多样性。nginx作为后起之秀,凭借事件驱动架构在高并发场景表现出色,您可以通过对比测试选择更适合的解决方案。但无论选择哪种Web服务器,PHP的配置哲学始终一致——必须严格区分开发与生产环境。
安全是生产环境的生命线。接下来,让我们手把手配置这两种环境。
开发环境
Windows
在Windows搭建开发环境无需购置昂贵的服务器版系统,第三方集成包让一切变得轻松。其中一些应用程序是 XAMPP 和 WAMP。所有这些第三方应用程序都做同样的事情——在程序中安装 Apache、MySQL 和 PHP。
XAMPP 是最常用的——你可以在 www.apachefriends.org 下载——因为它是跨平台的。XAMPP 代表跨平台、Apache、MariaDB、PHP、Perl。安装 XAMPP 非常简单。双击安装包后只需保持默认设置。但请注意勾选"Developer Tools"选项,这个关键步骤会自动配置php.ini开启调试模式。若遇错误信息不显示,可手动导航至C:\xampp\php\php.ini
display_errors = On
display_startup_errors = On
error_reporting = E_ALL
XAMPP 安装完成后,它将打开一个仪表板,你可以使用它来启动、停止和配置服务。
安装 XAMPP 并启动运行后,Web 根目录位于 c:xampp/htdocs/,这是你创建站点/应用程序的位置。要查看你的工作,只需在浏览器地址栏中输入 localhost,它将立即启动 htdocs 中的 index 文件。
Mac
在 Mac 上安装与 Windows 非常相似,设置开发环境最简单、最便宜的方法是安装第三方应用程序,可以安装 ServBay 或 MAMP。
ServBay 在这里也是我个人的最爱,你可以在 www.servbay.com 下载。使用 ServBay,你无需执行任何其他操作。只需单击所需的 PHP 版本,去倒杯咖啡,当你回来时,PHP 就已经安装好了。你甚至不需要打开终端。整个过程不到 3 分钟,这就是我推荐它的原因。内置的ServBay Dashboard实时显示服务状态、端口占用、日志流向等关键信息。
而且ServBay自带phpMyAdmin和Adminer,省去了我们配置的功夫。
Linux (基于 Debian)
在Linux世界,我推崇原生安装以获得最佳性能。首先更新软件源确保组件兼容性,你可以通过在终端中运行以下命令来执行此操作:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
这些只是简单地确保你的系统使用最新版本的软件。这也有助于确保你没有任何依赖问题。
系统更新后,大多数 Linux 机器上应该已经安装了 Apache2,但是,如果你不确定,只需运行 sudo apt-get install apache2
(请记住,如果已经安装了某些东西,运行 install 命令只会检查该软件是否有更新版本)。
现在你还需要安装一个数据库,你可以使用任何你喜欢的数据库,但是,我使用 MySQL。要安装 MySQL,请在终端中运行以下命令:
sudo apt-get install mysql-server
sudo mysql_secure_installation
按照提示输入安全密码。
确定已安装 Apache2 和 MySQL 后,可以通过运行以下命令安装 PHP
sudo apt-get install php
现在这将以其默认设置安装 PHP,因此你需要找到 php.ini 文件,该文件可以位于 /etc/php/7.0/apache2
和 /etc/php/7.0/cli
中。你需要更新“错误处理和日志记录”部分(第 392 行)以显示所有错误。有一些注释可以帮助你进行正确的更改,但是,一个简单的规则是;对于开发,全部打开,对于生产,全部关闭。
你还需要安装 phpmyadmin,这将使设置和更改数据库变得更加容易。
这样做相当简单,只需打开终端并输入:
sudo apt-get install phpmyadmin
完成后,你需要配置 Apache 配置文件以包含 phpmyadmin,这可以通过执行以下操作来完成:
sudo echo -e "\nInclude /etc/phpmyadmin/apache.conf" >> /etc/apache2/apache2.conf
现在你需要做的就是启动 Apache 和 MySQL,一切都会正常工作。使用以下命令执行此操作:
sudo service apache2 start && service mysql start
这样我们就完成了在你的 Linux 机器上的所有设置。
生产环境
当代码要面对真实用户时,安全配置就是数字铠甲。在 Mac 上,这轻而易举。借助 ServBay,可以一键关闭各种参数,你就可以直接使用你喜欢的 IDE 开始编码了。
然而,无论你运行的是 Windows 服务器还是 Linux 服务器,php.ini的调整原则一致:
-
关闭所有错误显示:
display_errors = Off
-
启用错误日志:
log_errors = On
-
指定日志路径:
error_log = /var/log/php_errors.log
在Linux中,建议使用日志轮替工具防止日志膨胀
sudo apt install logrotate -y
对于Windows服务器,建议定期使用Event Viewer查看系统日志。重要提示:开发与生产环境配置差异应通过版本控制系统管理,例如使用Git分支区分环境配置文件。
感谢你阅读我的教程,希望它能帮助你根据你需要的确切目的设置你的系统。