我所有的站点都位于AWS负载均衡器的后面。我想在Stack Overflow论坛上进行有关重写的相关问题,如果您想了解有关背景检查Wordpress permalink behavior
的更多信息,我自己通过将重定向从Apache httpd.conf文件中移出解决了这个最初的问题。检查网站性能后,我不得不重新访问。
简而言之,问题是如果我使用以下命令在/etc/httpd/conf/httpd.conf中重定向:
RewriteEngine On
<IF "req('Host') != 'www.beta-test-three.com.au'">
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule .* https://www.%{HTTP:Host}%{REQUEST_URI} [L,R=301]
</IF>
<ELSE>
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule .* https://%{HTTP:Host}%{REQUEST_URI} [L,R=301]
</ELSE>
我在sitename.com上的主页显示出来并且速度很快。不幸的是,由于某种原因,我的.htaccess文件中的URL重写被绕过了。以下规则可让我显示漂亮的网址,而不必在每个链接上都使用index.php,例如sitename.com?index.php/page-name而不是允许所有页面显示为sitename.com/page-name
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
现在,我真的希望通过httpd.conf进行重定向的原因是,我的网站加载时间从2.9s缩短到1.8s,节省了我超过一秒钟的时间!
我只是不明白为什么当我打开httpd.conf中的重定向时,我的.htaccess重写规则被停用?
感谢您提供的任何帮助。
答案 0 :(得分:0)
此答案是将以下内容添加到httpd.conf中的VirtualHosts部分
<Directory "/var/www/html/site-name">
AllowOverride All
</Directory>
我在WordPress支持表格上做了更详细的回复 https://wordpress.org/support/topic/i-dont-understand-the-behaviour-on-apache-server-redirection/
感谢和问候。