我有一个Linux CentOS 6 x64 VPS我在上面安装了一个网站。我对 Linux 没有丰富的经验,但是我成功安装了 Apache 和我的网站,这是一个用于控制我的游戏服务器的游戏面板。该网站安装在var/www/html文件夹。问题是我无法摆脱 Apache 默认模板。我尝试添加 .htaccess 文件var/www/html重定向到我社区的网站,因此模板不会显示,但它不起作用。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^104.255.97.113 [NC,OR]
RewriteRule ^(.*)$ http://www.ad-rp.xyzt/$1 [L,R=301,NC]
你有什么建议吗?
答案1
默认模板是指您在全新安装 Apache 2.x 时看到的“It Works!”页面吗?如果是这样,那么您只需移动/删除文件或更改 /etc/apache2/sites-available 中的 Ghost (000-default.con)。
如果这些文件不在 /var/www/html 中(如果我没记错的话,默认情况下它们应该位于 /var/www/html 中,那么您可以执行以下命令来找到它们,请注意,更新应该以 root 身份或使用 sudo 运行!:
sudo updatedb
locate html/index.html
这应该返回找到 html/index.html 的所有位置,并且很可能是您当前在 Web 服务器上收到的默认“It Works!”页面。您仍然需要找出正在渲染的到底是哪一个,但这可以在默认的虚拟主机配置文件中找到。尝试执行以下命令:
locate 000-default.conf
这应该返回默认虚拟主机文件的确切位置。您可能会看到 2 个位置,一个位于站点可用目录中,一个位于站点启用目录中(这不是 Debian/Ubuntu 发行版上的默认位置,例如在 CentOS 上这些位置可能会有所不同)。可用站点包含所有虚拟主机配置文件,您可以添加新的、删除或编辑它们。启用的站点具有指向可用站点的符号链接,但仅限于已启用的虚拟主机(通过在 Debian/Ubuntu 上执行 a2ensite 名称或在 CentOS 上执行符号链接(sudo ln -s /etc/httpd/sites-available/example.com .conf /etc/httpd/sites-enabled/example.com.conf))。如果您的系统(可能在 CentOS 和 Debian/Ubuntu 以外的发行版上)上没有此默认 vhost 文件或位置(可用站点和启用站点),则可以编辑 httpd-config 文件(默认位置:/ etc/httpd/conf/httpd.conf)并在文件末尾添加“IncludeOptionalsites-enabled/*.conf”。这会将所有启用的虚拟主机放入此特定目录中。确保它存在!
您可以检查文件的任一版本,因为它们完全相同。您可以通过执行以下命令来做到这一点:
cat /path/to/file/000-default.conf | grep DocumentRoot
这应该输出该文件中包含的 DocumentRoot。这是该特定虚拟主机的根目录,您可以在其中找到模板文件。
但正如我提到的,默认位置应该是 /var/www/html/,这是您已经上传网站的位置。您的网站是否有可能有一个index.php而没有index.html,因为这不会覆盖默认模板文件,从而导致Web服务器仍然返回index.html模板。您可以通过更改 apache2.conf 文件中的 DirectoryIndex 来解决此问题。