2013-02-12 111 views
0

我正在一个Drupal网站上,在这我要显示我的网站,而不是www.ex.com ex.com/drupal删除URL路径/ Drupal的

我已经使用这个代码尝试:

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^202.158.43.33$ [NC] 

RewriteRule .* 202.158.43.33 [L,R=301] 
RewriteRule ^$ drupal/index.php [L] 
RewriteCond %{DOCUMENT_ROOT}/drupal%{REQUEST_URI} -f 
RewriteRule .* drupal/$0 [L] 
RewriteCond %{REQUEST_FILENAME} ! -f 
RewriteCond %{REQUEST_FILENAME} ! -d 
RewriteRule .* drupal/index.php?q=$0 [QSA] 
</IfModule> 

这是保存在根文件夹中,我改变了$ base_url ='http://www.ex.com';在Drupal /网站/默认/ settings.php

当我运行我的网站,我看到的网址为:202.158.43.33/202.158.43.33/202.158.43.33/202.158.43.33 .........

有人能告诉我如何解决这个问题。

回答

0

而不是编写自己的代码,使用Drupal的默认.htaccess文件。然后取消注释此代码片段的最后两行。

# To redirect all users to access the site WITH the 'www.' prefix, 
    # (http://example.com/... will be redirected to http://www.example.com/...) 
    # uncomment the following: 
    # RewriteCond %{HTTP_HOST} !^www\. [NC] 
    # RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

虚拟主机配置文件:

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "/var/www/http/mysite.com" 
    ServerName mysite.com 
    ServerAlias www.mysite.com 
</VirtualHost> 

文档根目录应该指向你当前的网站中,“/ Drupal的”子目录下导航到Drupal的。

+0

我仍然遇到同样的问题。我想要的不是在URL中显示/ drupal文件夹名称。说www.website.com/drupal我想把它显示为www.website.com – 2013-02-15 09:03:56

+0

所以这完全是一个不同的问题。如果您的网站位于www.x.com/some_directory,则您的虚拟主机不是您的.htaccess文件。我将添加一个编辑到我的答案与你的虚拟主机应该看起来像。 – danielson317 2013-02-15 16:27:07

+0

我试过你所建议的,但我仍然无法解决问题。这是我想要的,如果我进入我的网站Ip说202.158.43.33它将我重定向到202.158.43.33/drupal我不想在url中显示/ drupal – 2013-02-16 15:33:37

0

你需要将drupal文件放在这个域的单独文件夹中吗?我只是问,因为有一个明显的答案让一个drupal站点运行在根目录下:只需将drupal文件夹中的所有文件(位于“drupal”文件夹中的所有文件)移动到父目录(根目录)网站将显示在www.yourdomain.com上,而不是www.yourdomain.com/drupal上