【问题标题】:How to bypass wordpress htaccess如何绕过wordpress htaccess
【发布时间】:2025-12-19 04:05:10
【问题描述】:

public_html 文件夹包含一个 wordpress 站点。我已经将一个新的 Angular 应用程序放在名为 myapp 的子文件夹中。

所以 www.domain.com -> wordpress 和 wwww.domain.com/myapp -> 角度应用程序

现在,如果我刷新或尝试以角度访问 url 路径(路由),我会得到 wordpress 网站的 404 页面。

所以根 (public_html) 文件夹有一个像这样的 .htaccess:

# 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

在 myapp 文件夹(角度)我有这个:

RewriteEngine on
RewriteBase /myapp/
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /index.html [NC,L]

无论我尝试什么,它总是以:myapp 中的一切正常,(刷新、直接 url 访问等)但 www.domain.com -> myapp!!!

或者

www.domain.com 仍然 -> wordpress 但 我的 Angular 应用程序在刷新和直接 url 访问时给了我 404!

这是我认为应该可以使用的 .htaccess

RewriteEngine on
RewriteBase /
# Condition to get in my angular app
RewriteCond %{REQUEST_URI} ^/myapp/.*$
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /myapp/index.html [NC,L]

#Condition to go in wordpress
RewriteCond %{REQUEST_URI} !^/myapp/.*$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

请帮忙!!

【问题讨论】:

    标签: wordpress angular .htaccess


    【解决方案1】:

    终于!!!成功了!!!

    学习了!!!不要尝试混合不同文件夹的.htaccess!!

    wordpress .htaccess 不需要任何更改。

    Angular 的一个(子文件夹)更改如下:

    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(.*) index.html [NC,L]
    

    所以基本上是两件事!!!

    1. 删除了 RewriteBase /myapp/
    2. 删除了 RewriteRule ^(.*) index.html [NC,L] 中的 /

    希望这对其他人有所帮助;-)

    【讨论】: