我有一个网站说www.abcd.com。如果我使用 url http://abcd.com访问它,它工作正常。但我想要的是,如果用户使用 url http://abcd.com,那么 Web 服务器应该能够将其转换为 url www.abcd.com。
%LOCATION_CONTAINS_HTACCESS_FILE% = 一些路径
httpd.config 中的一些重要变化是:
1. DocumentRoot "/var/www/html"
2. <Directory />
Options FollowSymLinks
AllowOverride All #changed to All
</Directory>
3. <Directory "%LOCATION_CONTAINS_HTACCESS_FILE%">
AllowOverride All
</Directory>
4. AccessFileName .htaccess #default
5. %LOCATION_CONTAINS_HTACCESS_FILE%/.htaccess # I added
6. <Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
我的.htaccess
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
通过这些更改,我在执行“ service httpd restart ”时在第 5 行(我认为是上面的)出现错误:
Starting httpd: Syntax error on line 415 of /etc/httpd/conf/httpd.conf:
Invalid command '%LOCATION_CONTAINS_HTACCESS_FILE%/.htaccess', perhaps misspelled or defined by a module not included in the server configuration
我浏览了网络上的大部分链接,但找不到任何具体的解决方案。
我对 Web 服务了解不多。但等待更简单的解决方案。
希望你们已经面对这个问题并且肯定已经解决了。