我已经在这里和其他地方读过几篇非常相似的问题(this one可能是最接近的)。我们的情况是,我不希望WP成为附加到我们应用程序的博客,而是人们在点击我们的URL时看到的内容。问题当然是Codeigniter,因为它在根中,而WP在/wordpress/
中,它的index.php在根中。对于我来说,将WP设置为以root身份读取,而不需要将它的 index.php放在根目录中。
除了将我们的应用程序部分移动到新目录之外的任何想法?在任务关键时刻有大量的用户活动,所以不要愚弄潜在的停机时间,冲突等。基本上我们不想触摸应用程序,如果可能的话,只是让人们没有登录WP的路线没有在URL中看到/ wordpress /的营销网站。
感谢您的任何指示!
答案 0 :(得分:0)
基本上我们不想触摸应用程序,如果可能的话,只需让人们没有登录到WP营销网站的路线而不在网址中看到/ wordpress /。
如果您的主应用处理身份验证,您可能会使用Cookie来存储身份验证令牌。您可以在.htaccess中使用此cookie,以确定如何重写URL。这样的事情应该有效:
RewriteEngine On
RewriteBase /
# if auth cookie is not set, use /wordpress/ routes
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_COOKIE} !^.*authcookiename.*$ [NC]
RewriteRule ^(.*)$ wordpress/index.php/$1 [L]
# otherwise, use the codeigniter routes
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
有两点需要注意:
$config['index_page'] = '';