如何使用多个xampp像xampp php版本5,xampp php版本7,版本8.我也安装它,但问题新的laravel项目npm不安装

pn9klfpd  于 2023-03-21  发布在  PHP
关注(0)|答案(1)|浏览(215)

当我运行xampp php版本7都是好的,但当我运行xampp php版本8,但我目前的项目不工作this is my laravel 9 xampp php version 8 current project
另一个问题是,当我运行新项目并安装npm install && npm run dev时,它不工作npm install,当我运行npm run dev时,结果是npm run dev
当我运行php artisan migrate和serve后,然后login url

kiz8lqtg

kiz8lqtg1#

当您可以通过 * 单个xampp安装 * 同时使用 * 多个PHP版本 * 时,为什么要在PHP版本之间切换呢?

单次安装xampp,有两种选择:

1.**仅在旧项目目录下运行旧版本的PHP:**这在大多数情况下都可以达到目的。您可能有一个或两个旧项目,您打算使用旧版本的PHP运行。只需配置xampp仅在这些项目目录下运行旧版本的PHP即可。
1.**在xampp的单独端口上运行较旧的PHP版本:**有时候您可能会将旧项目升级到最新的PHP版本,同时您需要在新的PHP版本和旧的PHP版本之间来回运行相同的项目。为此,您可以在不同的端口上设置较旧的PHP版本(例如8056),因此当您转到http://localhost/any_project/时,xampp运行PHP 7,当您转到http://localhost:8056/any_project/时,xampp运行PHP 5.6。
1.**在虚拟主机上运行较旧的PHP版本:**您可以创建一个类似localhost 56的虚拟主机来运行PHP 5.6,同时可以在localhost上使用PHP 7。

设置

**第一步:**下载PHP

如果你在xampp下运行PHP 7,你想添加一个旧的PHP版本(比如PHP 5.6)。从php.net下载PHP zip压缩包的nts(非线程安全)版本(旧版本见archive),并解压缩c:\xampp\php56下的文件。线程安全版本不包括php-cgi.exe。

**第二步:**配置php.ini

在记事本中打开文件c:\xampp\php56\php.ini。如果该文件不存在,请将php.ini-development复制到php.ini并在记事本中打开它。然后取消注解以下行:

extension_dir = "ext"

同样,如果Apache配置httpd-xampp.conf中存在以下行

SetEnv PHPRC "\\path\\to\\xampp\\php"

用一个前导#(哈希字符)将其注解掉。

**第三步:**配置apache

打开xampp控制面板,单击apache的config按钮,然后单击Apache (httpd-xampp.conf)。将打开一个文本文件。将以下设置放在文件的底部:

ScriptAlias /php56 "C:/xampp/php56"
Action application/x-httpd-php56-cgi /php56/php-cgi.exe
<Directory "C:/xampp/php56">
    AllowOverride None
    Options None
    Require all denied
    <Files "php-cgi.exe">
        Require all granted
    </Files>
</Directory>

***注意:*如果需要,您可以按照步骤1到3将更多版本的PHP添加到xampp安装中。
步骤4(选项1):
[添加目录以运行特定的PHP版本]

现在您可以设置将在PHP 5.6中运行的目录。只需在配置文件(步骤3中的httpd-xampp.conf)的底部添加以下内容即可设置目录。

<Directory "C:\xampp\htdocs\my_old_project1">
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php56-cgi
    </FilesMatch>
</Directory>

<Directory "C:\xampp\htdocs\my_old_project2">
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php56-cgi
    </FilesMatch>
</Directory>

步骤4(选项2):[在单独端口上运行旧版PHP]

现在要在端口8056上设置PHP v5.6,请将以下代码添加到配置文件的底部(步骤3中的httpd-xampp.conf)。

Listen 8056
<VirtualHost *:8056>
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php56-cgi
    </FilesMatch>
</VirtualHost>

步骤4(选项3):[在虚拟主机上运行较旧的PHP版本]

要在http://localhost 56上的目录(htdocs 56)上创建虚拟主机(localhost 56)以使用PHP v5.6,请在所需位置创建htdocs 56目录,并将localhost 56添加到hosts文件(see how)中,然后将以下代码添加到配置文件的底部(步骤3中的httpd-xampp.conf)。

<VirtualHost localhost56:80>
    DocumentRoot "C:\xampp\htdocs56"
    ServerName localhost56
    <Directory "C:\xampp\htdocs56">
        Require all granted    
    </Directory>
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php56-cgi
    </FilesMatch>
</VirtualHost>

**完成:**保存并重启Apache

保存并关闭配置文件。从xampp控制面板重新启动apache。如果选择选项2,您可以在xampp控制面板中看到附加端口(8056)。

有关更多信息,请查看此线程:Is there way to use two PHP versions in XAMPP?

相关问题