我对虚拟主机 apache 文件和 htaccess 有一些问题。我有 apache,昨天更新到 2.6。我在上面安装了 2 个虚拟域,并禁用了默认域。一切正常,网站加载正常,没有问题。
第一个虚拟域有一个带有 +50 重写条件的 htaccess,它们都工作正常!我试图向第二个域添加一些条件,但那些重写目录的条件不起作用。
这是条件:
RewriteRule ^user/([a-zA-Z0-9_-]+)$ index.php?username=$1
RewriteRule ^user/([a-zA-Z0-9_-]+)/$ index.php?username=$1
在那里,每个域的“可用站点”apache配置文件(只有相关的东西):
域 1:
ServerAdmin webmaster@localhost
ServerName domain1.com
ServerAlias www.domain1.com
DocumentRoot /var/www/domain1.com/public_html
<Directory />
Options FollowSymLinks
AllowOverride ALL
</Directory>
<Directory /var/www/domain1.com/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride ALL
Order allow,deny
allow from all
</Directory>
域2:
ServerAdmin webmaster@localhost
ServerName domain2.com
ServerAlias www.domain2.com
DocumentRoot /var/www/domain2.com/public_html
<Directory />
Options FollowSymLinks
AllowOverride ALL
</Directory>
<Directory /var/www/domain2.com/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride ALL
Order allow,deny
allow from all
</Directory>
如您所见,除了主文件夹的路径之外,它们之间没有区别。我不明白它有什么问题。为什么第一个域完美运行而第二个域没有。
一些事情:
答:domain2 htaccess 文件上的任何其他条件都可以正常工作,例如将简单的 html 重定向到 php,或错误处理程序,或者只是重定向到测试。
B:我在我的第一个域 htaccess 文件中粘贴了相同的重写条件,它工作得很好!
看起来 apache 配置文件无法正常工作。
有什么我必须检查/更改的吗?
我会感谢任何帮助,并为我的英语感到抱歉。