pa4*_*080 15
需要说明的是,这不是 PhpMyAdmin 的设置,而是 Apache2 的配置设置,为此我们需要创建新的 VirtualHost。
1、了解PhpMyAdmin的默认配置。默认情况下(在 Ubuntu 16.04 中)PhpMyAdmin 被包含(并启用)到 Apache 的配置中(对于所有 VirtualHosts!),通过这个额外的配置文件:
/etc/apache2/conf-enabled/phpmyadmin.conf
Run Code Online (Sandbox Code Playgroud)
这个文件是文件的符号链接,是文件/etc/apache2/conf-available/phpmyadmin.conf
的符号链接,/etc/phpmyadmin/apache.conf
下一步会用到。
2. 创建新的 VirtualHost 配置文件。让我们调用它phpmyadmin.conf
并通过以下方式创建它nano
(或者您可以使用您喜欢的文本编辑器):
sudo nano /etc/apache2/sites-available/phpmyadmin.conf
Run Code Online (Sandbox Code Playgroud)
此文件的内容应如下所示:
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>
Run Code Online (Sandbox Code Playgroud)
在哪里:
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 的配置中。因此/etc/phpmyadmin/apache.conf
将仅包含在当前 VirtualHost 中!您可以/etc/phpmyadmin/apache.conf
在此位置复制/粘贴 的内容,而不是此指令。
3、切换Apache的配置并重启。
sudo a2disconf phpmyadmin
sudo a2ensite phpmyadmin
sudo systemctl restart apache2.service
Run Code Online (Sandbox Code Playgroud)
在哪里:
a2disconf phpmyadmin
将禁用默认的 phpMyAdmin 配置,如1 中所述。a2ensite phpmyadmin
将启用新的 VirtualHost,如2 中所述。!!. 像这样编辑/etc/phpmyadmin/apache.conf
和注释 ( #
) 第一个Alias
指令:
#Alias /phpmyadmin /usr/share/phpmyadmin
Run Code Online (Sandbox Code Playgroud)
这一步是可选的,但除此之外http://localhost:99
,并http://localhost:99/phpmyadmin
会提供相同的结果,所以我想我们不需要这样:)
!!. 如果您希望可以从外部访问这个新的 VirtualHost,请不要忘记将端口添加99
到您的防火墙规则中。如果您使用UFW,则可以通过以下命令执行此操作:
sudo ufw allow 99/tcp
Run Code Online (Sandbox Code Playgroud)
使用iptables,您可以通过以下命令执行此操作:
sudo iptables -A INPUT -p tcp -m tcp --dport 99 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
通过端口 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添加到可用访问中。要禁用只能通过端口 99 访问的端口 80,请将 注释掉或Listen 80
从配置中删除。
禁用默认端口更详细一点
在大多数情况下,不需要禁用默认端口 80。
如果您有其他站点需要访问端口 80 和该Listen
Virtualhost的指令。
或者,您可以通过创建一个Phpmyadmin版本主机并使用该虚拟主机的Listen 99指令将Phpmyadmin限制为仅一个特定端口。
可以在此处找到有关为 Apache2 创建虚拟主机的详细信息:
建立一个到/usr/share/phpmyadmin
virtualhost的符号链接document root
。
归档时间: |
|
查看次数: |
49267 次 |
最近记录: |