首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我不能将.htaccess文件的内容移动到我的虚拟主机中?

为什么我不能将.htaccess文件的内容移动到我的虚拟主机中?
EN

Stack Overflow用户
提问于 2012-05-31 23:13:54
回答 2查看 4.8K关注 0票数 2

我为我的Wordpress网站准备了一个.htaccess文件,里面有这个内容。

代码语言:javascript
复制
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

我将此内容移动到我的站点的Apache虚拟主机中(如下所示),并删除了htaccess文件。

代码语言:javascript
复制
<VirtualHost *:80>
ServerName 68.183.153.223
DocumentRoot /home/david/wordpressWebSite

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

</VirtualHost>

但是,当我尝试重新启动Apache时,Apache输出了一个错误。

代码语言:javascript
复制
RewriteBase: only valid in per-directory config files
Action 'restart' failed.

我认为htaccess文件内容可以移动到虚拟主机。什么是错误?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-31 23:17:46

根据docs的说法,RewriteBase“为每个目录的重写设置基URL”。

由于您没有设置每个目录的重写,因此该指令在特定目录的.htaccess文件之外是没有意义的。

票数 5
EN

Stack Overflow用户

发布于 2013-10-21 04:43:16

RewriteBase在虚拟主机文件中不起作用。

你可能想问的问题是:

如何在VHost RewriteRules中包含相对路径?

特别是,在vhosts中,*_FILENAME返回一个后跟REQUEST_URI的斜杠,而不是相对的或映射到文件系统!

例如,%{SCRIPT_FILENAME}

vhost文件中的需要:"assets/style.css"

  • In a vhost

  • :"/var/www/assets/style.css"

  • :.htaccess

有几种解决方案:

RewriteRule ^/foo/ /script.cgi

  • Solution #2:$ %{DOCUMENT_ROOT}/foo/baz RewriteCond %{DOCUMENT_ROOT}/%{SCRIPT_FILENAME} !-f RewriteRule (.*) bar <Directory> tags

<目录"/var/www/">上的RewriteEngine ...RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule (.*) /script.cgi

在directory标记中,*_FILENAME与htaccess文件中的处理方式相同。

当服务器有多个别名时,使用此别名可能会出现问题。

  • Solution #3:%{REQUEST_URI}尽可能使用%{_URI}而不是%{_FILENAME}

不是真正的答案。只需指出*_URI不需要重写,因为它们不应该映射到文件系统,因此vhost/htaccess路径是相同的。然而,使用REQUEST_URI并不总是可行的,David Faux在上面评论说它更慢。此外,thi

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10836359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档