Debian 10服务器配置 apache+php+mariadb

作者:root

安装一些会以后用到的工具:

apt install p7zip-full curl apt-transport-https build-essential iotop iftop htop ioping python python-setuptools

安装apache:

apt install apache2

#下面的命令开启一些apache服务器必要的模块

a2enmod alias dir expires log_config mime setenvif userdir reqtimeout authz_core authz_host filter deflate headers proxy proxy_fcgi rewrite negotiation authn_core mpm_event  ssl  dav* #webdav

每个虚拟主机的配置放在/etc/apache2/sites-available目录下,需要用一个命令使只生效,比如我的xxxx.conf:

a2ensite xxxx.conf

#如果不需要这个虚拟主机了,用下面的命令

a2dissite xxxx.conf

#每次a2ensite或者a2dissite之后都需要systemctl restart(reload)  apache2

安装php7:

apt install php-fpm php-bcmath php-curl php-bz2 php-gettext php-gd php-imap php-mbstring php-mysql php-pear php-xml php-xmlrpc php-zip

#php开启某个模块的命令是phpenmod,关闭的命令是phpdismon,这点与apache相似

安装好php7之后,系统会在/etc/apache2/conf-available目录下添加一个文件叫做php7.3-fpm.conf,我们需要:

a2enconf php7.3-fpm.conf

#重启apache使之生效

systemctl reload apache2

安装mariadb:

apt install mariadb-server

#运行命令/usr/bin/mysql_secure_installation设置root密码

Debain 10安装的是mariadb 10.3版本,在这个版本中,已经不允许使用root登录phpmyadmin。所以,如果你和我一样习惯使用phpmyadmin的话,那么我们需要创建一个和root一样拥有所有权限的用户:

#登录mariadb

mysql -uroot -p

CREATE USER '新用户名'@'%' IDENTIFIED BY '设置密码';

GRANT ALL PRIVILEGES ON *.* TO '新用户名'@'%' WITH GRANT OPTION;

然后我们就可以用这个新用户名和密码登录phpmyadmin了。

如果需要开启bbr,那么:

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf

echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

如果需要防火墙,推荐ufw:

apt install ufw

ufw allow 22  #你的ssh端口/tcp

ufw allow 80/tcp #开启http端口

ufw enable #开启防火墙