如何添加自定义目录,例如 phpmyadmin?

Adr*_* K. 11 lamp apache2

因为我的知识apache很少。我想让它成长,这样我就会有更多的 LAMP 经验。我今天的热门问题是:

如何将自定义目录添加到网络服务器?(例如phpmyadmin)?

我的目标是能够创建带有自定义网站的自定义地址。假设我的自定义目录位于:/media/my/web/portal1并且我想在客户端调用时加载它

http://localhost/myportal1 at webbrowser. 
Run Code Online (Sandbox Code Playgroud)

你能给我一份步骤清单,并附上几句话的解释吗?

小智 26

编辑您的 Apache 配置文件并添加别名指令。例如,让我们使用默认文件。

sudo -e /etc/apache2/sites-available/default
Run Code Online (Sandbox Code Playgroud)

通过在VirtualHost指令中添加一个部分来创建别名:

Alias /database/ "/usr/share/php5/phpmyadmin/"
<Directory "/usr/share/php5/phpmyadmin/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>
Run Code Online (Sandbox Code Playgroud)

保存并重启: sudo /etc/init.d/apache2 restart

或供其他参考:

sudo -e /etc/apache2/sites-available/default
Run Code Online (Sandbox Code Playgroud)

而内容...

Alias /myportal1/ "/media/my/web/portal1/"
<Directory "/media/my/web/portal1/">
    Order allow,deny
    Allow from all
    # New directive needed in Apache 2.4.3: 
    Require all granted
</Directory>
Run Code Online (Sandbox Code Playgroud)

保存并重启: sudo /etc/init.d/apache2 restart

Directory指令中添加更多指令,例如

Options Indexes FollowSymLinks 
Run Code Online (Sandbox Code Playgroud)

http://httpd.apache.org/docs/2.2/mod/core.html#directory

那是你追求的?

  • 不需要在别名中附加结束斜杠。它强制用户将其严格输入到 URL 中。在这种情况下,别名 /myportal1 不是别名 /myportal1/。注意缺少结束斜线。 (3认同)

Ere*_*evi 6

一个更简单的替代方法是从文档根目录创建一个软链接。例如,如果文档根目录是“/var/www”(大多数 Linux 系统上的默认值),则以下命令可以解决问题:

sudo ln -s /media/my/web/portal1 /var/www/myportal1
Run Code Online (Sandbox Code Playgroud)

这立即生效 - 您甚至不需要重新加载 Apache 服务器。