Wordpress 使用符号链接共享核心目录

Wordpress share core directories using symbolic links

背景:

我正在单个 ubuntu 服务器中部署多个(大约 10 个)wordpress 站点。

对于每个,我有一个 mysql 数据库(单一模式)和一个 wordpress 文件目录。

对于每个 wordpress 目录实例,结构如下所示:

|-- wp-admin
|   |-- css
|   |-- images
|   |-- includes
|   |-- js
|   |-- maint
|   |-- meta
|   |-- network
|   `-- user
|-- wp-content
|   |-- cache
|   |-- languages
|   |-- plugins
|   |-- themes
|   |-- upgrade
|   `-- uploads
`-- wp-includes
    |-- certificates
    |-- css
    |-- fonts
    |-- ID3
    |-- images
    |-- js
    |-- pomo
    |-- SimplePie
    |-- Text
    `-- theme-compat

所以我发现wp-adminwp-content目录是多余的,因为它们是wordpress的核心部分,我永远不会手动更改它们。

为了减少这些部分的 space,我保留了一个实例,对于其他实例,我在它们上面创建了符号链接。


比如我先有一个基础实例:

/var/www/wordpress/

我的网站之一:

/var/www/site1/

我使用这些命令更改结构:

$ cd /var/www/site1
$ rm -rf wp-admin
$ rm -rf wp-includes
$ ln -s /var/www/wordpress/wp-admin ./
$ ln -s /var/www/wordpress/wp-includes ./

嗯,我运行 site1,效果不错。


问题:

之后,我无法进入管理面板。

当我导航到:http://mysite.mydomain.com.

重定向到登录页面,无论我输入什么(我可以确保用户名和密码正确),都无法登录。

session好像创建不正确,谁能指出这是怎么回事?

请帮忙,谢谢。

尝试装载文件夹而不是使用符号 link。类似于此

mount --bind /var/www/wordpres/wp-admin /var/www/site1/wp-admin

确保在挂载之前创建了目录。如果这对你有用,那么请确保你的 /etc/fstab

中有坐骑

除了@madmanali93 的回答之外,我们还可以向/etc/fstab 添加一条记录以在启动时自动挂载该目录:

/var/www/wordpress/wp-admin /var/www/site1/wp-admin none bind 0 0