.htaccess 子目录上的WordPress URL重写

myss37ts  于 2022-11-16  发布在  WordPress
关注(0)|答案(3)|浏览(186)

我有一个WordPress的安装,其中只有两个自定义后类型(博客如何)。
博客位于根文件夹内的目录中,其中也有一些html页面,如下图所示:

要从html文件中访问某个自定义帖子类型,我有一个hrefwp/blog和另一个到wp/howto
问题是,我想跳过那个wp,所以我的url将像localhost/blog而不是localhost/wp/blog
我试过

RewriteEngine On
RewriteRule   blog/ /wp/blog/
RewriteRule   howto/ /wp/howto/

在.htaccess从根目录,它显示了我的博客模板,但只有404页错误,我不知道我应该修改什么,以获得WordPress的帖子。
PS:抱歉我的英语和我模糊的信息,最后期限的到来,我不知道我应该做什么跳过该文件夹。

nwo49xxi

nwo49xxi1#

1)在你的 Jmeter 板中,进入设置-〉常规,并确保
a)wordpress目录-〉http://mydomain.com/wp
B)站点地址-〉http://mydomain.com
2)将index.php从子目录移动到根目录(移动,不要只是复制)
3)编辑您的index.php以读取

/** Loads the WordPress Environment and Template */
require('./wp/wp-blog-header.php');

其中“wp”是子目录
4)删除子目录中的任何.htaccess文件
5)将其添加到根目录下的.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

在此设置下,您的wordpress安装将位于/wp/目录下。访问者将使用http://mydomain.com访问您的站点。
如果你想对每件事都有一个很好的阅读,这样你就知道你在做什么,阅读这个https://codex.wordpress.org/Giving_WordPress_Its_Own_Directory

fhg3lkii

fhg3lkii2#

如果我没理解错的话-所有的wordpress系统文件都在“wp”文件夹内。
如果是这种情况,您需要做的就是将它们拖到主文件夹中,问题就会自行解决。
至于帖子类型(博客/howto),如果这些是WordPress系统中的帖子类型,则不会受到真实的文件夹的影响,而是受到Wildcard DNS的影响--Wildcard DNS是一种通过url中的值将url与内容链接起来的方法。这意味着文件夹不必存在于服务器中,而只是存在于系统中。
对于解决您的问题,我建议只是,正如我之前所说-拖动所有文件从文件夹内“wp”-它的外面。
之后,您需要使用phpmyadmin或您拥有的任何其他客户端登录到数据库,然后转到:
A)选择wp_options
B)在option_name中查找siteurl,并从url中删除“wp”。(if it's http://sample.com/wp change it to http://sample.com)
C)在option_name中查找home,然后执行相同的操作。

编辑:

试试看:
在根目录(“wp”的父目录)中,打开.htaccess文件并在mod_rewrite.c中添加:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?YourDomain.com$
RewriteRule ^(/)?$ wp [L]

YourDomain.com更改为您的真实的域。这应该可以工作:)
来源:~here~

q9yhzks0

q9yhzks03#

我正在寻找一个解决方案,就像这样。人们一直在绕着这个问题转。你想要的是自定义帖子看起来像是来自mysite.com/blog的路径mysite.com/todo/have-a-nice-daymysite.com/blog/todo/instead。

相关问题