我们正在推出一个在线应用程序,它基本上只是一个静态index.php
,其中嵌入了Flash。我们还想添加一个FAQ页面和一个博客。因此,除了https://www.example.com
(应用程序)之外,我们还会有https://www.example.com/faq
静态页面和https://www.example.com/blog
。
FAQ和博客可以通过WordPress安装运行,但我们希望保持应用程序本身从简单的index.php
运行(以避免WP开销,一方面)。问题是,是否可以安装WP,使主页由我们的原始index.php
运行,但其他所有内容都是WP静态页面或博客?
答案 0 :(得分:2)
最简单的方法是使用.htaccess
将home.php
这样的文件作为默认索引页。这将是最好的,并会让你继续正常升级wordpress。
答案 1 :(得分:1)
我真的不明白为什么你需要wordpress这样一个“静态”网站,但无论如何,一个解决方案可能是在root中安装index.php(例如http://www.myapp.com
)然后给它wp it'自己的文件夹(http://www.myapp.com/wp/
),但将blogurl和homeurl维护为该子文件夹(http://www.myapp.com/wp/
)。
通过这种方式,您实际上会有2个索引,一个主应用程序(http://www.myapp.com/index.php
)和一个子文件夹(http://www.myapp.com/wp/index.php
)。
它们将作为完全不同的应用程序轻松链接。
当然还有很多其他方法可以做到这一点(例如,只创建一个特殊的home.php
模板文件 - 同时不消除索引,结果将是相同的)或者只是将其他页面定义为静态主页,或重定向......一切都取决于你想要实现的目标和方式......
答案 2 :(得分:1)
虽然接受的答案中的解决方案有效,但会导致http://www.example.com/wp-admin/
等网址导致404错误。这里的问题是Apache的Directory
指令中的任何语句也适用于子目录。所以,如果我设置
DirectoryIndex home.php
在我网站的目录上,然后http://www.example.com/wp-admin/
也会隐含地引用不存在的http://www.example.com/wp-admin/home.php
。
对我有用的解决方案实际上非常简单,并且需要对WordPress本身生成的.htaccess进行最少的修改:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^$ /home.php [L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
这里重要的一点是第4行,我插入了RewriteRule ^$ /home.php [L]
。就是这样!