Linux 下 Tomcat 自定义用户目录1

本章节将介绍怎样在 Linux 系统下自定义用户目录。首先,创建两个用户(user1 和 user2)。然后,在每个用户主目录下面创建 public_html 目录作为 tomcat 用户号自定义目录。如下图:

环境

Tomcat版本:apache-tomcat-7.0.64

JDK版本:jdk-7u80-linux-x64

Linux版本:CentOS Stream 9

具体步骤

创建用户

登录 root 用户,分别创建 user1 和 user2 两个用户,命令如下:

[root@localhost ~]# adduser user1
[root@localhost ~]# passwd user1
Changing password for user user1.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.

[root@localhost ~]# adduser user2
[root@localhost ~]# passwd user2
Changing password for user user2.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.

注意:上面的“BAD PASSWORD: The password is a palindrome”提示我们输入的密码是回文,因为我的密码为“aaaaaa”。

创建 public_html 目录

分别登录到 user1 和 user2 用户,在主目录下面创建 public_html 目录。命令如下:

[user1@localhost ~]$ mkdir public_html
[user2@localhost ~]$ mkdir public_html

搭建环境

登录 root 账号,将 JDK 和 Tomcat 安装包上传到根目录。然后安装 JDK、Tomcat,如果不清楚怎样安装,请参考“Linux 安装 JDK” 和 “Linux 安装 Tomcat”。

配置 server.xml

使用 CD 进入到 Tomcat 的 CATALINA_HOME/conf 目录。使用 vim 编辑 server.xml 文件,在 <host> 标签中添加如下配置:

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
    <Listener className="org.apache.catalina.startup.UserConfig"
        directoryName="public_html"
        userClass="org.apache.catalina.startup.PasswdUserDatabase" />
    <!-- ... -->
</Host>

启动 Tomcat

在 Tomcat 的 CATALINA_HOME 主目录打开终端,执行下面命令启动 Tomcat。如下:

[root@localhost apache-tomcat-7.0.64]# ./bin/startup.sh ; tail -f logs/catalina.out

验证效果

打开浏览器,访问 http://localhost:8080/~user1/ 地址,如下图:

继续访问 http://localhost:8080/~user2/  地址,如下图:

注意:

必须把 Web 文件放在 /home/user1/public_html 或者 /home/user2/public_html 目录中。当然,你也可以将 public_html 改成用户放置个人网页的任何子目录,但是必须是 tomcat 主机中所有用户的相同子目录名。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号