[英]Configure httpd.conf to add new site on Apache Red Hat Linux
我有安装了apache的linux服务器(Red Hat Enterprise Linux服务器版本5.3(Tikanga))。 它已经用于浏览某些文档。 现在,我想添加一个新目录(带有html页面),以便每当浏览目录时都可以显示html页面。
但是我不确定在哪里都可以编辑httpd.conf文件
现有的httpd.conf:
当我点击网址“ http:// servername / eng ”时,它会显示文件夹列表。
现在,我想在现有网站上添加一个网站,因此当用户点击网址“ http:// servername / builds ”时,它应该在浏览器中显示一个html页面。我已在“位置”中添加了“ index.html”页面在/ var / www / html等/构建/”
为此,我将以下代码添加到httpd.conf文件中
请让我知道conf文件中需要进行哪些修改
您可以通过几种不同的方式来做到这一点。
将index.html
放在/build
这需要您进行以下设置:
DirectoryIndex index.html
(默认情况下,大多数平台上都应该有该文件。)
同样,为了使它起作用,而不是放置新的<Directory>
,您应该将build/
目录放置在保存http://example.com/
文件的目录中。 例如:
/var/www/example.com/public_html/eng/ /var/www/example.com/public_html/builds/ /var/www/example.com/public_html/builds/index.html
将build/
存储在与example.com
完全无关的文件夹中,但仍然可以通过example.com/builds
为此,您需要重写URL,以便example.com/builds
将用户重定向到最终URL。 这很容易通过mod_rewrite实现。 在Apache的配置中启用mod_rewrite
模块,通过确保example.com
的<Directory>
配置中正确的AllowOverride
条目来确保example.com
可以具有.htaccess
文件,然后创建/var/www//example.com/public_html/.htaccess
(或类似文件),然后将其填充为所需的RewriteEngine On
和RewriteRule
。 Internet和文档中有关mod_rewrite的更多信息。
完全独立的虚拟服务器,例如builds.example.com/
在这种情况下,您要查找的是虚拟服务器。 这些未在httpd.conf
或配置本身中定义,但通常具有专用目录。
例如,要添加适用于端口80的builds.example.com
,您需要创建以下条目:
<VirtualHost *:80> ServerName builds.example.com DocumentRoot /var/www/builds.example.com/public_html/ </VirtualHost>
放在哪里? 好吧,这取决于平台。 对于Debian,您将其放在/etc/apache2/sites-available/
中的新文件中,例如/etc/apache2/sites-available/example.com
,并在/etc/apache2/sites-available
中将其符号链接到Debian,您可以使用a2ensite <NAME_OF_FILE>
轻松地完成此操作。在您的平台上,此过程可能有所不同,因此请查找它(“在上添加虚拟服务器将是开始”)。添加虚拟服务器后,您需要重新加载Apache组态。
如果您满意,请让我知道,否则,我将相应地修改答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.