如何将 phpMyAdmin 端口从 更改80
为99
?
答案1
需要明确的是,这不是 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
<VirtualHost *:99>
ServerName localhost
<Directory /usr/share/phpmyadmin>
AllowOverride None
Require all granted
</Directory>
DocumentRoot /usr/share/phpmyadmin
Include /etc/phpmyadmin/apache.conf
ErrorLog ${APACHE_LOG_DIR}/phpmyadmin.error.log
CustomLog ${APACHE_LOG_DIR}/phpmyadmin.access.log combined
</VirtualHost>
在哪里:
Listen 99
指示 Apache2 监听端口99
。与 @LDJames 类似说您可以把这个指令放进去/etc/apache2/ports.conf
或者把它留在这里;<VirtualHost *:99>...</VirtualHost>
定义一个 VirtualHost 来处理来自*
端口上所有接口 ( )的请求:99
。ServerName localhost
此指令是可选的,可以根据您的需要进行定制。(通常ServerName
在服务器级别设置-在/etc/apache2/apache2.conf
);<Directory /usr/share/phpmyadmin>...</Directory>
此指令是可选的,因为的访问权限/usr/share/
通常在中设置/etc/apache2/apache2.conf
。但您可以在此处添加特定规则,例如您可以Set Up Password Authentication
;DocumentRoot /usr/share/phpmyadmin
此指令设置/usr/share/phpmyadmin
为当前 VirtualHost 的从 Web 可见的主文档树的目录;Include /etc/phpmyadmin/apache.conf
此指令将默认的 phpMyAdmin 配置包含到 Apache 的配置中。因此将仅包含在当前 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
到防火墙规则中。如果你使用联邦水务局你可以通过以下命令进行操作:
sudo ufw allow 99/tcp
和iptables你可以通过以下命令进行操作:
sudo iptables -A INPUT -p tcp -m tcp --dport 99 -j ACCEPT
答案2
通过端口 99 添加访问权限快速又简单
将端口 99 添加到您的 Apache2 配置中。编辑/etc/apache2/ports.conf
。添加指令Listen 99
:
# 如果你只是在这里更改端口或添加更多端口,你很可能也会 # 必须更改 VirtualHost 语句 #/etc/apache2/sites-enabled/000-default.conf 听 80 收听 99 <IfModule ssl_module> 收听 443 </IfModule> <IfModule mod_gnutls.c> 收听 443 </IfModule> # vim: 语法=apache ts=4 sw=4 sts=4 sr noet
这增加了端口 99可用访问权限。要禁用端口 80您只能通过端口 99 进行访问,请Listen 80
从配置中注释掉或删除。
禁用默认端口更详细一些
大多数情况下,禁用默认端口 80 是没有必要的。
如果您有其他网站,则需要访问端口 80 和Listen
该虚拟主机的指令。
或者,您可以通过创建一个phpmyadmin版本主机并使用收听 99对该虚拟主机的指令。
有关为 Apache2 创建虚拟主机的详细信息,请参见这里:
/usr/share/phpmyadmin
创建到虚拟主机的符号链接document root
。