将phpMyAdmin端口从80更改为另一个号码
如何将phpMyAdmin端口从80
更改为99
?
为了清楚起见,这不是PhpMyAdmin的设置,它是Apache2配置的设置,我们需要为此目的创建新的VirtualHost。
1.了解PhpMyAdmin的默认配置。 默认情况下(在Ubuntu 16.04中)通过以下附加配置文件将PhpMyAdmin包含(并启用)到Apache的配置中( 对于所有VirtualHosts! ):
/etc/apache2/conf-enabled/phpmyadmin.conf
此文件是文件/etc/apache2/conf-available/phpmyadmin.conf
的符号链接,该文件是文件/etc/phpmyadmin/apache.conf
的符号链接,将在下一步中使用。
2.创建新的VirtualHost配置文件。 我们称之为phpmyadmin.conf
并通过nano
创建它(或者您可以使用您喜欢的文本编辑器):
sudo nano /etc/apache2/sites-available/phpmyadmin.conf
该文件的内容应如下所示:
Listen 99 ServerName localhost AllowOverride None Require all granted DocumentRoot /usr/share/phpmyadmin Include /etc/phpmyadmin/apache.conf ErrorLog ${APACHE_LOG_DIR}/phpmyadmin.error.log CustomLog ${APACHE_LOG_DIR}/phpmyadmin.access.log combined
哪里:
-
Listen 99
指示Apache2监听端口99
。 就像@LDJames 说你可以把这个指令放在/etc/apache2/ports.conf
或者你可以把它留在这里; -
定义了一个VirtualHost,它将处理来自端口... :99
所有接口(*
)的请求。 -
ServerName localhost
此指令是可选的,可以根据您的需要进行自定义。 (通常在服务器级别设置ServerName
– 在/etc/apache2/apache2.conf
); -
此指令是可选的,因为... /usr/share/
的访问权限通常在/etc/apache2/apache2.conf
设置。 但您可以在此处添加特定规则,例如您可以Set Up Password Authentication
; -
DocumentRoot /usr/share/phpmyadmin
这个指令将/usr/share/phpmyadmin
为构成可从Web看到的主文档树的目录,用于当前的VirtualHost; -
Include /etc/phpmyadmin/apache.conf
这个指令包含默认的phpMyAdmin配置到Apache的配置中。 因此/etc/phpmyadmin/apache.conf
将仅包含在当前的VirtualHost中! 您可以在/etc/phpmyadmin/apache.conf
复制/粘贴/etc/phpmyadmin/apache.conf
的内容,而不是此指令。
3.切换Apache的配置并重新启动它。
sudo a2disconf phpmyadmin sudo a2ensite phpmyadmin sudo systemctl restart apache2.service
哪里:
-
a2disconf phpmyadmin
将禁用默认的phpMyAdmin配置,如1所述。 -
a2ensite phpmyadmin
将启用新的VirtualHost,如2所述。
!!。 编辑/etc/phpmyadmin/apache.conf
并注释( #
)第一个Alias
指令,如:
#Alias /phpmyadmin /usr/share/phpmyadmin
这一步是可选的,但是否则http://localhost:99
和http://localhost:99/phpmyadmin
将提供相同的结果,所以我想我们不需要那个:)
!!。 如果您希望从外部访问这个新的VirtualHost,请不要忘记将端口99
添加到防火墙的规则中。 如果您使用UFW,您可以通过此命令执行此操作:
sudo ufw allow 99/tcp
使用iptables,您可以通过以下命令执行此操作:
sudo iptables -A INPUT -p tcp -m tcp --dport 99 -j ACCEPT
通过端口99添加访问权限既快捷又简单
将端口99添加到Apache2配置中。 编辑/etc/apache2/ports.conf
。 添加指令Listen 99
:
#如果您只是更改端口或在此处添加更多端口,您可能也会 #必须更改VirtualHost语句 #etet/apache2/sites-enabled/000-default.conf 听80 听99听443 IfModule>配置 听443 IfModule>配置 #vim:syntax = apache ts = 4 sw = 4 sts = 4 sr noet
这会将端口99添加到可用访问。 要禁用只能通过端口99访问的端口80 ,请注释掉或从配置中删除Listen 80
。
禁用默认端口更加详细
在大多数情况下,不需要禁用默认端口80。
如果您有其他站点需要访问端口80和对该Virtualhost的Listen
指令。
或者,您可以通过创建Phpmyadmin版本主机并将Listen 99指令用于该虚拟主机,将Phpmyadmin限制为仅一个特定端口。
可以在此处找到为Apache2创建虚拟主机的详细信息:
创建/usr/share/phpmyadmin
虚拟主机document root
的符号链接。