如何在drupal8上修复RewriteBase

时间:2019-04-12 08:35:20

标签: php apache drupal drupal-8

问题:我在服务器上安装了drupal(8.6),并且希望"/drupal" (mysite.com/drupal)可以访问它,我曾经使用过htaccessapache2 conf's RewriteBase /drupal,但是当我单击在我的drupal网站中的connect或anylink上,它使我无需/drupal(例如:mysite.com/user/login)被重定向。

apache2 conf:

<VirtualHost *:81>
ServerName mysite.com
DocumentRoot /var/www/sitesweb/drupal

<Directory /var/www/sitesweb/drupal>
    Options Indexes FollowSymLinks
    AllowOverride none
    Require all granted
    RewriteEngine On
    RewriteBase /drupal
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !=/favicon.ico
    RewriteRule ^ index.php [L]
    php_value memory_limit 512M
</Directory>
LogLevel debug
ErrorLog /var/log/apache2/drupal_error.log

</VirtualHost>

在我的.htaccess文件中,我注释或取消注释RewriteBase行,结果相同。

1 个答案:

答案 0 :(得分:0)

从此处尝试解决方案:

https://drupal.stackexchange.com/questions/241761/how-do-i-run-a-site-from-a-sub-directory

也就是说:

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{REQUEST_URI} !drupal/
  RewriteRule (.*) /drupal/$1 [L]
</IfModule>