我用Symfony2为我的客户编写了一个应用程序,并将其公开。但是,我现在了解到,他在以前的服务器中有一个单独的Wordpress
应用程序来管理一些单独的产品。
现在,他要求我们将该WP应用程序转移到新服务器上。考虑到安全问题,我对这里的潜在影响感到紧张。我要有以下URL设置:
- www.myclientapp.com
- www.myclientapp.com/some-wp
我在这里有什么选择?我能想到一些,但任何建议都会很有帮助。
-
购买单独的共享主机并将WP放在那里。然后从我们的网站重定向
-
我的VPS服务器运行
nginx
和php-fpm
。我可以利用在不同用户下运行的单独池吗?我需要检查Symfony文件的访问权限
在任何情况下,我将分配单独的mysql
用户和数据库。这些将通过严格的特权强制执行,禁止访问我的主数据库。
你们还能想到别的吗?
我的主要目标是:如果WP是脆弱的,让它去吧。在任何情况下,我都不会允许它危及我的Symfony2
应用程序。我主要关心的是包含敏感数据的配置文件(app/config/*.yml
)。
我建议您使用子域名,例如wp.symfony.com。
它们可能仍然托管在同一台服务器上,但使用不同的虚拟主机目录。这样,应用程序就永远不会看到对方了。
一种方法是在与WP网站不同的php-fpm用户下运行symfony,并确保文件/目录权限设置正确。然后WP漏洞无法根据目录/文件权限对symfony文件进行写/读操作。
一个更好的方法是使用php配置open_basedir并将这两个站点隔离到它们自己的"jail"中,这样php就可以防止从其他网站包含/读取文件。详见http://php.net/manual/en/ini.core.php#ini.open-basedir
要做到这一点,代码应该被分隔到不同的目录中,你可以使用nginx别名或virtualhosts将域名指向正确的目录。