【问题标题】:Wordpress delivering every page as homepageWordPress 将每一页都作为主页
【发布时间】:2018-12-06 22:47:53
【问题描述】:

我在主机上安装了 wordpress,并有一个指向该主机的 DNS。问题是该站点正在从子目录迁移,并且该结构需要保持不变。

所以 www.webpage.com/subdirectory/ 现在指向托管内容的 www.wordpress-host.com。

在 Wordpress 中,站点 URL 设置为 www.webpage.com/subdirectory/,.htaccess 为:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /subdirectory/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /subdirectory/index.php [L]
</IfModule>

通过此设置,主页呈现正常,所有 css 和 javascript 都正确加载。

问题在于,无论查看哪个页面/帖子,它总是呈现主页。

我还创建了一个插件来用站点 URL 替换所有主机 URL,但是当它处于活动状态时,每个文件都是主页,因此您检查任何 .css 或 .js 文件它都是主页中的 HTML。

在 htaccess 或其他解决方案中是否缺少某些东西来使其正常工作?

我认为 htaccess 不正确,但我不确定如何让它与假子目录一起使用。

-新主机只是一个 wordpress 主机,因此原站点将保留在其主机上,但 wordpress 安装正在移动。

【问题讨论】:

  • 澄清一下,你是说之前安装在/subdirectory的wordpress现在已经移到/了? .htaccess 在哪里?在/subdirectory?或/?
  • Wordpress 之前安装在 /subdirectory 但已移动到新主机的根目录,但原始 URL 必须保持不变。 .htaccess 文件位于根级别
  • 如果要保留原来的url(带子目录),为什么要把网站移动到根目录???
  • @Bjiorn 新主机不支持子目录
  • 什么样的主机不支持子目录?即使是wordpress也会有自己的子目录,例如wp-content,'wp-admin, etc. If your root directory is /var/www/html/`作为服务器上的root'/',你只需要重新定义目录'/var/www /html/subdir' 作为你的根目录,然后像你的旧主机一样安装 wordpress,不是吗?

标签: wordpress .htaccess


【解决方案1】:

如果您想从/subdirectory 重定向到/,那么首先,.htacess 应该位于/subdirectory,因为这将是所有 url 请求的来源。

其次在.htaccess 设置上,RewriteRule 应该是RewriteRule . /index.php [L]

【讨论】:

  • 我更新了描述,但新主机是纯 wordpress 主机,所以在移动 wordpress 安装时旧站点将保留在其主机上。这样就没有子目录,但我需要以某种方式伪造它,因此当流量来自主 URL 时,所有链接和资产都将从该映射传递。
猜你喜欢
  • 2018-12-09
  • 1970-01-01
  • 2013-10-29
  • 1970-01-01
  • 1970-01-01
  • 2017-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多