如何在GCP中的Bitnami认证wordpress中将www配置为非www重定向?

问题描述 投票:0回答:3

我的网站在GCP中运行,我需要编辑.htaccess文件以创建将www重定向到非www的重定向。如何配置?我在网站上没有看到.htaccess文件,我使用了文件管理器插件来访问wordpress核心文件。

我在bitnami某处读取了htaccess的配置有所不同,如何创建重定向?

顺便说一句,我的httpd-vhosts.conf文件具有以下代码行。

<VirtualHost *:80>
    ServerName wordpress.example.com
    ServerAlias www.wordpress.example.com
    DocumentRoot "/opt/bitnami/apps/wordpress/htdocs"

    Include "/opt/bitnami/apps/wordpress/conf/httpd-app.conf"
</VirtualHost>

<VirtualHost *:443>
    ServerName wordpress.example.com
    ServerAlias www.wordpress.example.com
    DocumentRoot "/opt/bitnami/apps/wordpress/htdocs"
    SSLEngine on
    SSLCertificateFile "/opt/bitnami/apps/wordpress/conf/certs/server.crt"
    SSLCertificateKeyFile "/opt/bitnami/apps/wordpress/conf/certs/server.key"

    Include "/opt/bitnami/apps/wordpress/conf/httpd-app.conf"
</VirtualHost>

字面上是example.com,不是mydomain.com,我应该担心吗?

wordpress .htaccess redirect google-cloud-platform bitnami
3个回答
0
投票

由于您没有询问why my WordPress website not showing,我认为您的WordPress网站运行正常,因此您可以按原样设置ServerName。

此外,请参考document of Apache HTTP Server

由于具有ServerName www.example.com的虚拟主机位于配置文件中的第一位,因此它具有最高的优先级,可以被视为默认服务器或主服务器。

这意味着,如果收到与指定的ServerName指令之一不匹配的请求,则该请求将由第一个服务。

即使ServerName可能与您的真实域不匹配,也将使用*:80上的第一个VirtualHost

因此,如果您的WordPress网站正在运行,我建议您将其保存为example.com。

有关重定向设置,请参阅article on Bitnami

您可以尝试使用SSH并使用text editors之一编辑/opt/bitnami/apps/wordpress/conf/httpd-vhosts.conf文件:

<VirtualHost *:80>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1$1 [R=permanent,L]
    ServerName wordpress.example.com
    ServerAlias www.wordpress.example.com
    DocumentRoot "/opt/bitnami/apps/wordpress/htdocs"

    Include "/opt/bitnami/apps/wordpress/conf/httpd-app.conf"
</VirtualHost>

<VirtualHost *:443>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ https://%1$1 [R=permanent,L]
    ServerName wordpress.example.com
    ServerAlias www.wordpress.example.com
    DocumentRoot "/opt/bitnami/apps/wordpress/htdocs"
    SSLEngine on
    SSLCertificateFile "/opt/bitnami/apps/wordpress/conf/certs/server.crt"
    SSLCertificateKeyFile "/opt/bitnami/apps/wordpress/conf/certs/server.key"

    Include "/opt/bitnami/apps/wordpress/conf/httpd-app.conf"
</VirtualHost>

您将需要重新启动Apache HTTP Web服务器以重新加载设置文件。

$sudo /opt/bitnami/ctlscript.sh restart apache

0
投票

有很多方法可以实现重定向。一种简单的方法是修改您的apache conf文件。用您的域名替换example.com。

<VirtualHost *:80>
    ServerName example.com
    # Redirect everything arriving on HTTP to HTTPS
    Redirect "/" "https://example.com/"
</VirtualHost>

<VirtualHost *:443>
    ServerName example.com
    # Redirect anything that is not "example.com"
    <If "%{HTTP_HOST} != 'example.com'">
        Redirect "/" "https://example.com/"
    </If>
</VirtualHost>

Redirecting and Remapping with mod_rewrite

阅读此链接可避免常见用例:

When not to use mod_rewrite

您应该修改ServerName以代表服务器的域名。这应该与您在WordPress设置中为WordPress AddressSite Address配置的内容相匹配。


0
投票

[如果您使用的是可在wordpress中直接配置的bitnami wordpress,因为唯一具有wordpress的.htaccess位于

/ opt / bitnami / apps / wordpress / htdocs / wp-content / plugins / akismet / .htaccess

我建议您更改名称站点,这是wordpress的link。还考虑在您的dns记录中有记录

wordpressexample.com外部IPwww.wordpressexample.com CNAME wordpressexample.com

这是为了使我能够从两个链接访问您的网站。

© www.soinside.com 2019 - 2024. All rights reserved.