如何在 XAMPP 上安装 PHP 8
How to install PHP 8 on XAMPP
我正在尝试将我的 PHP 版本更新到全新的 PHP 8。我已按照与 this 教程类似的步骤进行操作。但是现在显示以下错误:
12:06:23 [Apache] Error: Apache shutdown unexpectedly.
12:06:23 [Apache] This may be due to a blocked port, missing dependencies,
12:06:23 [Apache] improper privileges, a crash, or a shutdown by another method.
12:06:23 [Apache] Press the Logs button to view error logs and check
12:06:23 [Apache] the Windows Event Viewer for more clues
12:06:23 [Apache] If you need more help, copy and post this
12:06:23 [Apache] entire log window on the forums
注意:我用的是全新的XAMPP安装版本7.2.33.
我找不到我的问题的解决方案。
编辑
它说我需要查看日志文件,但是它们完全是空的,因为它是一个全新的安装。
这是我的 httpd-xampp.conf
:
<IfModule env_module>
SetEnv MIBDIRS "C:/xampp/php/extras/mibs"
SetEnv MYSQL_HOME "\xampp\mysql\bin"
SetEnv OPENSSL_CONF "C:/xampp/apache/bin/openssl.cnf"
SetEnv PHP_PEAR_SYSCONF_DIR "\xampp\php"
SetEnv PHPRC "\xampp\php"
SetEnv TMP "\xampp\tmp"
</IfModule>
#
# PHP-Module setup
#
LoadFile "C:/xampp/php/php8ts.dll"
LoadFile "C:/xampp/php/libpq.dll"
LoadModule php8_module "C:/xampp/php/php8apache2_4.dll"
LoadFile "C:/xampp/php/libsqlite3.dll"
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
#
# PHP-CGI setup
#
#<FilesMatch "\.php$">
# SetHandler application/x-httpd-php-cgi
#</FilesMatch>
#<IfModule actions_module>
# Action application/x-httpd-php-cgi "/php-cgi/php-cgi.exe"
#</IfModule>
<IfModule php8_module>
PHPINIDir "C:/xampp/php"
</IfModule>
<IfModule mime_module>
AddType text/html .php .phps
</IfModule>
ScriptAlias /php-cgi/ "C:/xampp/php/"
<Directory "C:/xampp/php">
AllowOverride None
Options None
Require all denied
<Files "php-cgi.exe">
Require all granted
</Files>
</Directory>
<Directory "C:/xampp/cgi-bin">
<FilesMatch "\.php$">
SetHandler cgi-script
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler None
</FilesMatch>
</Directory>
<Directory "C:/xampp/htdocs/xampp">
<IfModule php8_module>
<Files "status.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
</Directory>
<IfModule alias_module>
Alias /licenses "C:/xampp/licenses/"
<Directory "C:/xampp/licenses">
Options +Indexes
<IfModule autoindex_color_module>
DirectoryIndexTextColor "#000000"
DirectoryIndexBGColor "#f8e8a0"
DirectoryIndexLinkColor "#bb3902"
DirectoryIndexVLinkColor "#bb3902"
DirectoryIndexALinkColor "#bb3902"
</IfModule>
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
AllowOverride AuthConfig
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
Alias /webalizer "C:/xampp/webalizer/"
<Directory "C:/xampp/webalizer">
<IfModule php8_module>
<Files "webalizer.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
</IfModule>
在
中将php8_module
重写为php_module
(所有出现的地方)
“httpd-xampp.conf”文件为我解决了 Error: Apache shutdown unexpectedly
问题 :)
运行 PHP 8 on XAMPP 现在很容易,因为 XAMPP 新版本随 PHP 8 更新发布。在本地主机上使用 XAMPP 服务器安装 XAMPP 和 运行 第一个 PHP 程序。以下是步骤:
- 下载并安装XAMPP
- 在 XAMPP 中创建一个新项目并添加您的 PHP 程序
- 打开 XAMPP 和 运行 你的第一个 PHP 程序
下载并安装XAMPP
第一步:到Apache Friends网站下载XAMPP服务器(支持PHP8)。 Apache Friends官网下载XAMPP:
第二步:下载后安装。
您可以将其安装在任何位置。我们安装了 XAMPP 即 C: 驱动器,
在 XAMPP
中创建一个新项目
第 3 步:现在,转到 Xampp 文件夹中的 htdocs 文件夹并创建您的项目文件夹。
这里创建了一个AmitProject文件夹,如下图所示:
按照 this 教程操作,您将不需要更新上面显示的任何设置。
- 将旧 php 目录重命名为 phpX
- 下载所需版本的 PHP + 开发包,例如:https://windows.php.net/download#php-8.0
- 解压到 xampp/php 下载的档案
- 如果旧的 php 配置对您很重要,请将 phpX/php.ini 复制到 php/
- 提取到xampp,重写引用phphttpd-xampp.config
中的旧行
- 而不是 phpX_module,只使用 php_module
- 如果问题仍然存在,运行 xampp_start 给出
PHP load error: %1 is not a valid Win32 application.
然后下载新的 apache 版本...
- 别忘了把 httpd.conf、httpd-ssl.conf、httpd-xampp.conf
或者不单独下载模块,只需使用所需版本进行新的 XAMPP 安装并复制 php+apache 目录,然后卸载旧的。从旧的 apache 目录获取 httpd*.conf 文件或更正它们的路径。
此错误是新 php 版本 xampp 配置错误的结果(意味着 xampp/apache/conf/extra/httpd-xampp.conf 中的错误条目)。
幸运的是,您可以使用此 shell 命令检查 Apache 服务器的配置:
c:/xampp/apache/bin/httpd.exe -t
(将驱动器盘符替换为您的安装驱动器盘符,如果您在自定义文件夹中安装了 xampp,还要更改 xampp 文件夹。)
如果您看到 Syntax OK
php 基本上应该可以工作(不要忘记 copy/adjust php.ini 文件)。如果不是,httpd.exe -t
的输出会提供有用的提示,提示应该在 httpd-xampp.conf.
中更改哪些内容
在https://windows.php.net/download#php-8.0
重要的是你必须下载“线程安全”版本。否则你没有“php8apache2_4.dll”,你需要它以便 php8 在 XAMPP.
中与 apache 一起工作
我正在尝试将我的 PHP 版本更新到全新的 PHP 8。我已按照与 this 教程类似的步骤进行操作。但是现在显示以下错误:
12:06:23 [Apache] Error: Apache shutdown unexpectedly.
12:06:23 [Apache] This may be due to a blocked port, missing dependencies,
12:06:23 [Apache] improper privileges, a crash, or a shutdown by another method.
12:06:23 [Apache] Press the Logs button to view error logs and check
12:06:23 [Apache] the Windows Event Viewer for more clues
12:06:23 [Apache] If you need more help, copy and post this
12:06:23 [Apache] entire log window on the forums
注意:我用的是全新的XAMPP安装版本7.2.33.
我找不到我的问题的解决方案。
编辑 它说我需要查看日志文件,但是它们完全是空的,因为它是一个全新的安装。
这是我的 httpd-xampp.conf
:
<IfModule env_module>
SetEnv MIBDIRS "C:/xampp/php/extras/mibs"
SetEnv MYSQL_HOME "\xampp\mysql\bin"
SetEnv OPENSSL_CONF "C:/xampp/apache/bin/openssl.cnf"
SetEnv PHP_PEAR_SYSCONF_DIR "\xampp\php"
SetEnv PHPRC "\xampp\php"
SetEnv TMP "\xampp\tmp"
</IfModule>
#
# PHP-Module setup
#
LoadFile "C:/xampp/php/php8ts.dll"
LoadFile "C:/xampp/php/libpq.dll"
LoadModule php8_module "C:/xampp/php/php8apache2_4.dll"
LoadFile "C:/xampp/php/libsqlite3.dll"
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
#
# PHP-CGI setup
#
#<FilesMatch "\.php$">
# SetHandler application/x-httpd-php-cgi
#</FilesMatch>
#<IfModule actions_module>
# Action application/x-httpd-php-cgi "/php-cgi/php-cgi.exe"
#</IfModule>
<IfModule php8_module>
PHPINIDir "C:/xampp/php"
</IfModule>
<IfModule mime_module>
AddType text/html .php .phps
</IfModule>
ScriptAlias /php-cgi/ "C:/xampp/php/"
<Directory "C:/xampp/php">
AllowOverride None
Options None
Require all denied
<Files "php-cgi.exe">
Require all granted
</Files>
</Directory>
<Directory "C:/xampp/cgi-bin">
<FilesMatch "\.php$">
SetHandler cgi-script
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler None
</FilesMatch>
</Directory>
<Directory "C:/xampp/htdocs/xampp">
<IfModule php8_module>
<Files "status.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
</Directory>
<IfModule alias_module>
Alias /licenses "C:/xampp/licenses/"
<Directory "C:/xampp/licenses">
Options +Indexes
<IfModule autoindex_color_module>
DirectoryIndexTextColor "#000000"
DirectoryIndexBGColor "#f8e8a0"
DirectoryIndexLinkColor "#bb3902"
DirectoryIndexVLinkColor "#bb3902"
DirectoryIndexALinkColor "#bb3902"
</IfModule>
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
AllowOverride AuthConfig
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
Alias /webalizer "C:/xampp/webalizer/"
<Directory "C:/xampp/webalizer">
<IfModule php8_module>
<Files "webalizer.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>
</IfModule>
在
中将php8_module
重写为php_module
(所有出现的地方)
“httpd-xampp.conf”文件为我解决了 Error: Apache shutdown unexpectedly
问题 :)
运行 PHP 8 on XAMPP 现在很容易,因为 XAMPP 新版本随 PHP 8 更新发布。在本地主机上使用 XAMPP 服务器安装 XAMPP 和 运行 第一个 PHP 程序。以下是步骤:
- 下载并安装XAMPP
- 在 XAMPP 中创建一个新项目并添加您的 PHP 程序
- 打开 XAMPP 和 运行 你的第一个 PHP 程序
下载并安装XAMPP
第一步:到Apache Friends网站下载XAMPP服务器(支持PHP8)。 Apache Friends官网下载XAMPP:
第二步:下载后安装。 您可以将其安装在任何位置。我们安装了 XAMPP 即 C: 驱动器,
在 XAMPP
中创建一个新项目第 3 步:现在,转到 Xampp 文件夹中的 htdocs 文件夹并创建您的项目文件夹。
这里创建了一个AmitProject文件夹,如下图所示:
按照 this 教程操作,您将不需要更新上面显示的任何设置。
- 将旧 php 目录重命名为 phpX
- 下载所需版本的 PHP + 开发包,例如:https://windows.php.net/download#php-8.0
- 解压到 xampp/php 下载的档案
- 如果旧的 php 配置对您很重要,请将 phpX/php.ini 复制到 php/
- 提取到xampp,重写引用phphttpd-xampp.config 中的旧行
- 而不是 phpX_module,只使用 php_module
- 如果问题仍然存在,运行 xampp_start 给出
PHP load error: %1 is not a valid Win32 application.
然后下载新的 apache 版本...
- 别忘了把 httpd.conf、httpd-ssl.conf、httpd-xampp.conf
或者不单独下载模块,只需使用所需版本进行新的 XAMPP 安装并复制 php+apache 目录,然后卸载旧的。从旧的 apache 目录获取 httpd*.conf 文件或更正它们的路径。
此错误是新 php 版本 xampp 配置错误的结果(意味着 xampp/apache/conf/extra/httpd-xampp.conf 中的错误条目)。
幸运的是,您可以使用此 shell 命令检查 Apache 服务器的配置:
c:/xampp/apache/bin/httpd.exe -t
(将驱动器盘符替换为您的安装驱动器盘符,如果您在自定义文件夹中安装了 xampp,还要更改 xampp 文件夹。)
如果您看到 Syntax OK
php 基本上应该可以工作(不要忘记 copy/adjust php.ini 文件)。如果不是,httpd.exe -t
的输出会提供有用的提示,提示应该在 httpd-xampp.conf.
在https://windows.php.net/download#php-8.0
重要的是你必须下载“线程安全”版本。否则你没有“php8apache2_4.dll”,你需要它以便 php8 在 XAMPP.
中与 apache 一起工作