# I2P 匿名网页服务器

## 在I2P上匿名部署网页的指导

这是你自己的匿名I2P网页服务器（经常被称为一个匿名网站）。 如果要提供你自己的内容，简单地编辑在网页服务器根目录下的文件。如果你按照下面的说明操作，这个站点将会被发布。

网页服务器的根目录文件夹可以在如下几个位置找到，这要看你的操作系统：

- Linux
  标准 安装:`~/.i2p/匿名网站/docroot/`
  包安装，作为一个运行服务，`/var/lib/i2p/i2p-配置/匿名网站/docroot/`
- Windows
  `%LOCALAPPDATA%\I2P\eepsite\docroot\`
- Mac
  `/Users/(user)/Library/Application Support/i2p`

在I2P中，隐藏服务使用以“ .b32.i2p”结尾的Base32地址或以长Base32字符串表示的Destination来寻址。 在您按照以下说明分配寄存器名称之前，可以将Base32地址用作主机名。 目标在某种程度上类似于IP地址，并显示在 隐藏服务配置页面上

教程：如何为你的网站配置类似 "mysite.i2p" 的域名并允许他人访问。 你可以在本机访问http://127.0.0.1:7658/进入你的网站。

## 如何设置并发布你的隐藏服务

网页服务默认开启，但在你开启隐藏服务隧道前他人不能访问。 尽管你开启了 I2P 网页服务器隧道，但他人很难访问你的网站。 这是因为匿名网站只能由一段很长的网址或原始网址的 Base32 编码(下称“编码网址”)（.b32.i2p）访问。 为了让他人访问，你可以直接告知他人你的匿名网站的原始网址或编码网址，但把网址加入 I2P 的地址簿会比较方便。 以下是详细说明。

- 为你的网站取一个名字（something.i2p），使用小写字母。 你可以先在你自己的路由器的地址簿中检查一下，看看你的名字是否已经被占用。 在 隐藏服务配置页面上的 "网站名称 "处输入你网站的新名称。 这将取代默认的 "mysite.i2p"。 另外，如果您希望在启动I2P时自动启动您的I2P网络服务器隧道，请勾选 "自动启动 "选项。 现在您的网站将在每次启动路由器时启动。 请务必点击 "保存".
- 在隧道管理器页面上点击Webserver隧道的启动按钮。 你现在应该看到它列在I2P路由器控制台左侧的 "本地隧道 "下 。 您的网站已经运行在I2P网络上了
- 突出显示并复制隐藏服务配置页上的整个本地目的地。 请确保你复制了整个内容，它超过了500个字符。
- 输入名称并将目的地粘贴到你的address book。 点击 "添加 "以保存新条目。
- 在你的浏览器中，输入你的网站名称（something.i2p），你应该就会回到这里。 希望它正常工作!
- 在你告诉世界你的新网站之前，你应该添加一些内容。 进入上面列出的服务器根目录，用你自己的内容替换index.html重定向页面。

目录列表是启用的，所以你可以从一个子目录中托管文件，而不提供一个带有文件链接的页面。 你可以通过为每个目录提供一个经过编辑的jetty-dir.css文件来改变目录的外观。 lib子目录展示了一个自定义的风格。 resources子目录演示的是默认样式。 如果你需要一个基本网站的模板，请随意调整这个页面和相关内容。

如果您在编辑内容后返回此页面，尝试清楚您的浏览器缓存：

- Firefox: 首选项➜ 高级➜ 网络➜ 缓存网页内容➜ 立即清除
- Chrome/Chromium: 设置➜ 高级设置➜ 隐私➜ 清除浏览数据
- Chrome/Chromium: 设置 ➜ 隐私➜ 清除浏览数据

## 注册您自己的I2P域名

现在是时候将您的网站添加到由stats.i2p等网站托管的I2P地址簿中。 您必须在其中一个或多个网站上输入您的网站名称和目的地（或注册认证字符串）。

一些注册网站要求使用 "目的地"。 突出显示并复制隐藏服务配置页上的整个本地目的地。 请确保你复制了整个内容，它超过了500个字符。

一些注册网站，包括stats.i2p，需要注册认证字符串。 它可以在隐藏服务配置页面的Registration Authentication页面中找到。 复制整个认证字符串并将其粘贴到注册页面。 请确保你复制了整个字符串，它超过了500个字符。 如果网站要求提供这一信息，请简要描述你的网站。 如果你的网站是一个HTTP服务，请把复选框留下；如果不是，请取消选择。

对于所有注册站点，请仔细阅读服务条款。 点击“提交”按钮。 验证提交是否成功。 由于许多路由器会定期从这些站点获取地址簿更新，因此在几个小时之内，其他路由器只需在其浏览器中输入您的主机名就能找到您的网站。

## 添加地址簿订阅

说到地址簿更新，这是将更多地址簿添加到您自己的订阅列表中的好时机。 转到订阅配置页面并添加一个或多个自动更新的新主机列表：

- `http://stats.i2p/cgi-bin/newhosts.txt` (stats.i2p)

如果您赶时间并且不能等几个小时，可以告诉人们使用“跳转”地址帮助程序重定向服务。 这将会在您同一站点上注册主机名后的几分钟内生效。 首先，通过在浏览器中输入`http://stats.i2p/cgi-bin/jump.cgi?a=something.i2p`进入您的浏览器。 一旦设置完毕，您就可以告诉其他人使用跳转服务了。

有些人查看网站列表，如Identiguy的eepsite状态列表或no.i2p的活跃主机列表，以了解新的eepsite，因此你的网站可能刚开始就能获得一些流量。 还有很多其他方法可以告诉人们。这里有几个点子。

- 在I2P 论坛发布消息给所有人介绍你的新I2P网站！
- 在IRC #i2p 或者 #i2p-chat 频道告诉人们.
- 放到 I2PWiki 匿名网站索引

请注意，有些网站建议粘贴那个长的目的地。 如果你想的话可以，但如果你已经在注册服务上成功注册了你的主机名，使用跳转服务进行了测试，并等待24小时后地址簿更新传播给其他人，这应该是没有必要的。

## 使用备用网络服务器托管你的网站

该网站（和I2P路由控制台）正在运行Jetty网络服务器，但您可能希望使用其他网络服务器来托管您的主机内容。 为了保持匿名，请确保将您的网络服务器配置为仅允许来自本地主机（127.0.0.1）的连接，并检查文档以确保您的网络服务器没有发布可能危害您匿名性的详细信息。

要配置您的webserver在I2P上使用，您可以使用现有的webserver隧道，禁用默认webserver运行，或者在匿名服务管理器中创建一个新的HTTP Server隧道。 确保为webserver配置的监听端口（默认为7658）也在隐藏服务设置中配置。 例如，如果你的webserver默认是在地址127.0.0.1端口80上监听，你还需要确保在隐藏服务管理器的设置页面中，该服务的目标端口也被配置为80端口。

请注意，配置不当的Web服务器或Web应用程序可能会泄漏可能危害信息的信息，例如 您的真实IP地址或服务器详细信息，可能会减少您的匿名性或帮助黑客。 我们建议您使用默认服务器，除非您愿意进行服务器管理。 在将其联机之前，请确保您的Web服务器是安全的。 在线上有很多指南，例如，如果您搜索“ nginx安全强化指南”，则会发现许多具有良好建议的指南。

Apache服务器有一个重要的问题。 `mod_status`和`mod_info`模块在某些操作系统上是默认启用的。 这些模块暴露了内部数据，当在匿名网络上使用时，会导致匿名性的严重损害。 删除配置文件中加载这些模块的行是防止这些问题的最简单方法。

## 更多帮助

如你有任何问题，可在如下地方寻求帮助：

- 我们的IRC支持频道：
  - #i2p on Freenode
  - 匿名使用你的本地I2P IRC 隧道。
- 项目论坛i2pforum.i2p。
- I2PWiki匿名网站托管指南

本页、项目网站和路由器控制台都需要翻译! 请通过参与开发或翻译来帮助项目的发展。