可以使用如下命令来查看debian的版本号。
cat /etc/debian_version
可以使用如下命令来查看debian的版本号。
cat /etc/debian_version
在使用 Debian 时,发现通过 Vi 编辑文件时不能使用方向键,解决办法如下:
第一种方法:
在终端打开VI配置文件:vi ~/.vimrc
输入:set nocompatible
保存后,vi 就可以使用上下左右方向键了。
第二种方法:
安装 vim ,执行 sudo apt install vim
,安装完成后,vi 命令就可以使用方向键了。
第一步,执行安装命令:
apt install -y mariadb-server
第二步,执行如下命令进行安全配置,该命令可以配置数据库密码等相关操作。
mysql_secure_installation
通过如下命令授权 root 用户远程访问,xxxxx 是密码。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'xxxxxx';
然后进入 /etc/mysql/mariadb.conf.d,编辑 50-server.cnf。
注释掉下面的行(在前面加#)
bind-address = 127.0.0.1
最后重启服务即可。
systemctl restart mysql
提示:
由于mysql/mariadb配置文件有点多,如果找不到该配置在哪个文件里面,可以通过如下命令进行查找:
grep -r "bind-address" /etc/mysql/*
今天给一台国内的服务器重装了 debian 11 ,由于 debian 11 带的 php 版本是 7.4,有点老,所以我们可以使用 debian 开发者 Ondřej Surý 维护的 php 源 deb.sury.org 。具体用法如下:
首先,使用下面的命令安装所须的软件包:
apt install ca-certificates apt-transport-https software-properties-common -y
安装所须软件包后,使用以下命令将 Sury 存储库添加到 APT:
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list
然后,使用以下命令下载并添加 GPG 密钥:
wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -
上述添加 GPG 密钥的命令会提示 Warning: apt-key is deprecated
,但是可以执行成功,如果不想要报 Warning 可以换成下面的命令:
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
完成后,使用以下命令更新存储库:
apt update
到此,sury 源添加完成。
如果要安装 php 的最新版本,可以执行:
apt install php-fpm php-mysql php-mbstring php-curl php-dom php-imagick php-zip php-gd php-intl
如果要安装指定的版本,例如安装 php8.0,可以执行:
apt install php8.0-fpm php8.0-mysql php8.0-mbstring php8.0-curl php8.0-dom php8.0-imagick php8.0-zip php8.0-gd php8.0-intl
为了能让 WordPress 发送通知邮件,需要在服务器上配置MTA(Mail Transfer Agent),常见的MTA服务有 Sendmail、Postfix 等。
Sendmail 是 Unix 系统的标准邮件传输代理,而 Postfix 邮件服务器安全性更好一些。
这里我们选择的是 Postfix,用来为 WordPress 提供仅发送服务。
通过如下命令安装 Postfix
apt install postfix
安装过程中,会出现配置界面。如果已安装,可以使用 dpkg-reconfigure postfix
重新打开该界面。
我们将选择 Internet Site 并按回车。
对于系统邮件名称,我们将使用我们网站的域名,对于本站,就是 wujie.me 。
这两步配置完后,等待安装完成,WordPress 就可以发送通知邮件了。
如果想对 Postfix 进行更详细的配置,可以配置文件 /etc/postfix/main.cf。
例如为了增强安全性,需要把 SMTP 服务改为只允许本地使用,那么可以把 inet_interfaces = all
改成 inet_interfaces = loopback-only
改完之后,需要重启 postfix 服务:
systemctl restart postfix
下载 imagick 源码,解压并进入目录
wget https://pecl.php.net/get/imagick-3.4.4.tgz
tar xf imagick-3.4.4.tgz
cd imagick-3.4.4
安装依赖
apt install -y libmagickcore-dev libmagickwand-dev autoconf
进入 imagick 代码目录后执行 phpize
/usr/local/php/php74/bin/phpize
配置
./configure --with-php-config=/usr/local/php/php74/bin/php-config --with-imagick=/usr/local/imagemagick
编译安装
make && make install
编译安装完成后会显示扩展模块编译到了哪个目录,记录下这个目录的路径,以便在 php.ini 中进行配置,我这里是 /usr/local/php/php74/lib/php/extensions/no-debug-non-zts-20190902/
配置 php.ini
extension_dir = "/usr/local/php/php74/lib/php/extensions/no-debug-non-zts-20190902/"
extension=imagick.so
保存并退出,重启 php-fpm 即可。
系统镜像是基于阿里云的 Debian10.6。
configure参数:
./configure --prefix=/usr/local/php/php74 --enable-gd --with-curl --enable-fpm --enable-cgi --with-openssl --enable-mbstring --with-pdo-mysql --with-zlib --with-zip --with-mysqli --enable-opcache --enable-mysqlnd --with-libxml --with-jpeg --with-freetype --with-pdo-sqlite --with-sqlite3 --enable-cli --enable-shared --enable-exif
问题记录
问题:
configure: error: Package requirements (openssl >= 1.0.1) were not met:
No package ‘openssl’ found
解决:
apt install libssl-dev
问题:
configure: error: Package requirements (sqlite3 > 3.7.4) were not met:
No package ‘sqlite3’ found
解决:apt-get install libsqlite3-dev
问题:
configure: error: Package requirements (libcurl >= 7.15.5) were not met:
No package ‘libcurl’ found
解决:apt-get install libcurl4-gnutls-dev
问题:
configure: error: Package requirements (oniguruma) were not met:
No package ‘oniguruma’ found
解决:apt install libonig-dev
问题:
configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met:
No package ‘libzip’ found
解决:apt-get install libzip-dev
另外,编译时遇到 virtual memory exhausted: Cannot allocate memory 的错误,这是由于阿里云的镜像默认没开启swap的原因,创建一个 swap 内存再编译即可。
总结一下,在阿里云提供的 debina10 镜像上编译安装 PHP7.4 ,必须安装的依赖有:
apt install -y libssl-dev libsqlite3-dev libcurl4-gnutls-dev libonig-dev libzip-dev
一点感想:与 CentOS7 相比,Debian10 安装一些依赖非常方便,不用像 CentOS 一样要到处找源,要安装“野包”才能编译。
可以使用下面的命令代替
apt-get install -y software-properties-common
在使用apt-get装好apache2之后,执行
sudo apt-get install libapache2-mod-php
即可使apache支持PHP
同理,也可以用apt-get安装PHP的mysql模块
apt-get install php-mysql
其它模块同理安装
Debian查看http请求总数
ps -ef|grep http|wc -l