XAMPP
XAMPP 是一个易于安装的 Apache 发行版,包含 MariaDB、PHP、Perl 和 ProFTPD。它包含:Apache、MariaDB、PHP & PEAR、Perl、ProFTPD、phpMyAdmin、OpenSSL、GD、Freetype2、libjpeg、libpng、gdbm、zlib、expat、Sablotron、libxml、Ming、Webalizer、pdf class、ncurses、mod_perl、FreeTDS、gettext、mcrypt、mhash、eAccelerator、SQLite 和 IMAP C-Client。
安装
安装 xamppAUR 软件包。
配置
默认配置应该可以直接使用。XAMPP 各个部分的设置可以通过编辑以下文件完成
/opt/lampp/etc/httpd.conf
— Apache 配置。例如,您可以更改包含网页源文件的文件夹。/opt/lampp/etc/php.ini
— PHP 配置。/opt/lampp/phpmyadmin/config.inc.php
— phpMyAdmin 配置。/opt/lampp/etc/proftpd.conf
— ProFTPD 配置。/opt/lampp/etc/my.cnf
— MySQL 配置。
如果您想设置服务器的安全性,只需运行
# /opt/lampp/xampp security
系统将逐步询问您,为网页访问、phpMyAdmin 的用户 "pma"、MySQL 的用户 "root" 和 ProFTPD 的用户 "daemon" 选择密码。
使用
使用以下命令控制 XAMPP
# /opt/lampp/xampp start,stop,restart
启动时自动启动
为了在启动时启动 XAMPP,启用 xampp.service
。
技巧与诀窍
托管 htdocs 目录之外的文件
文档根目录(网站根目录)位于 /opt/lampp/htdocs/
。放置在此目录中的所有文件都将由 Web 服务器处理。
要在您的系统上使用 XAMPP 托管其他文件,您可以为 Apache 配置别名。
- 使用您喜欢的编辑器编辑 Apache 的
/opt/lampp/etc/httpd.conf
。 - 找到
DocumentRoot
,您将看到类似以下内容
DocumentRoot "/opt/lampp/htdocs" <Directory "/opt/lampp/htdocs"> ... ... </Directory>
- 在
</Directory>
之后的下一行粘贴此内容
<Directory "/yourDirectory/"> Options Indexes FollowSymLinks ExecCGI Includes AllowOverride All Require all granted </Directory>
- 接下来找到
<IfModule alias_module>
<IfModule alias_module> # # Redirect: Allows you to tell clients about documents that used to # exist in your server's namespace, but do not anymore. The client # will make a new request for the document at its new location. # Example: # Redirect permanent /foo http://www.example.com/bar ... </IfModule>
- 并在
</IfModule>
之前粘贴此内容
Alias /yourAlias /yourDirectory/
- 接下来找到
<IfModule unixd_module>
<IfModule unixd_module> ... ... User daemon Group daemon </IfModule>
- 并将
daemon
更改为yourUser
和yourGroup
User yourUser Group yourGroup
- 现在不要忘记重启 Apache
# /opt/lampp/xampp restart
这将允许您使用 XAMPP 从您的主目录(或任何其他目录)托管文件。
在上面的示例中,您可以通过将 Web 浏览器指向 localhost/yourAlias
来访问文件。
使用 Xdebug 和 XAMPP 进行调试和性能分析
有关详细说明,请参阅 https://xdebug.org/find-binary.php。
您必须首先从同一下载页面下载 XAMPP 开发工具,https://www.apachefriends.org/en/xampp-linux.html[死链 2022-09-23 ⓘ]。
将其解压到您的 XAMPP 目录中
# tar xvfz xampp-linux-devel-x.x.x.tar.gz -C /opt
您应该能够成功在您的 xdebug 文件夹中运行 /opt/lampp/bin/phpize
。
本地测试服务器安全
可以配置 Apache、MySQL 和 ProFTPD,使其仅侦听来自您自己计算机的请求。对于大多数测试系统来说,这很好,并且大大降低了风险,因为这些服务无法从 Internet 访问。
在首次启动 XAMPP 之前,找到并编辑这些文件
对于 Apache,编辑文件 /opt/lampp/etc/httpd.conf
和 /opt/lampp/etc/extra/httpd-ssl.conf
。查找以 "Listen" 开头的行,例如
Listen 80
并将它们替换为
Listen 127.0.0.1:80
对于 MySQL,打开文件 /opt/lampp/etc/my.cnf
,找到 "[mysqld]" 部分并添加以下行
bind-address=localhost
对于 ProFTPD,在 "DefaultServer" 部分下的 /opt/lampp/etc/proftpd.conf
中添加以下行
DefaultAddress 127.0.0.1 SocketBindTight on
启动服务后,通过转到命令窗口并启动并执行来验证结果
$ ss -tln
本地地址列应始终以 127.0.0.1 或 ::1 开头,永远不要以 0.0.0.0 开头。
手动安装
要手动安装 XAMPP 而不是按照#安装,请从网站下载安装程序,使其可执行,并通过键入以下内容来运行它
# ./xampp-linux-x64-version-installer.run
# ./xampp-linux-x64-version-installer.run --mode gtk
如果您不想使用任何图形界面,并且更喜欢直接从终端安装 XAMPP,请启动
# ./xampp-linux-x64-version-installer.run --mode text
有关更多选项,请以普通用户身份启动
$ ./xampp-linux-x64-version-installer.run --help
您现在可以为 XAMPP 创建一个 systemd 服务
/etc/systemd/system/xampp.service
[Unit] Description=XAMPP [Service] ExecStart=/opt/lampp/xampp start ExecStop=/opt/lampp/xampp stop Type=forking [Install] WantedBy=multi-user.target
手动移除
如果您是手动安装的 XAMPP,您也需要手动移除它。请务必停止所有 XAMPP 服务。
# /opt/lampp/xampp stop
XAMPP 需要安装的所有文件都位于之前的 /opt/lampp
文件夹中。因此,要卸载 XAMPP
# rm /etc/systemd/system/xampp.service # rm -r /opt/lampp
故障排除
PhpMyAdmin 403 访问被拒绝
如果您的 https://127.0.0.1/phpmyadmin 返回 "403 Access Forbidden",您需要在 /opt/lampp/etc/extra/httpd-xampp.conf
中编辑以下设置
<Directory "/opt/lampp/phpmyadmin"> AllowOverride AuthConfig Limit #Order allow,deny #Allow from all Require all granted </Directory>