gpt4 book ai didi

wordpress - Laravel 和 Wordpress 在同一服务器/域上

转载 作者:行者123 更新时间:2023-12-04 01:08:10 24 4
gpt4 key购买 nike

我正在尝试在 Laravel(5.1) 项目中托管一个 WordPress 网站。我有以下结构(精简了一些)

├── app
├── config
├── public
│   ├── index.php
│   ├── wordpress -> ../wordpress
│   └── .htaccess
├── resources
├── storage
├── vendor
└── wordpress
├── index.php
├── wp-admin
├── wp-config.php
├── wp-includes
   └── .htaccess

vhost 文档根目录是公开的。

Wordpress 应该捕获所有通过 .htaccess 的内容。但是例如/login 应该去 laravel。当我的项目增长时,我打算添加更多规则来捕获对 Laravel 的请求。我在/public 中有以下 .htaccess 文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule "^/login" "index.php" [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule "^(.*)$" "wordpress/$1" [L]
</IfModule>

但是当我向/login 发出请求时,我仍然会得到 wordpress 页面。这是日志的一部分:
 add path info postfix: /var/www/public/login -> /var/www/public/login/
strip per-dir prefix: /var/www/public/login/ -> login/
applying pattern '^/login' to uri 'login/'
add path info postfix: /var/www/public/login -> /var/www/public/login/
strip per-dir prefix: /var/www/public/login/ -> login/
applying pattern '^(.*)$' to uri 'login/'
RewriteCond: input='/var/www/public/login' pattern='!-d' => matched
RewriteCond: input='/var/www/public/login' pattern='!-f' => matched
rewrite 'login/' -> 'wordpress/login/'
add per-dir prefix: wordpress/login/ -> /var/www/public/wordpress/login/
strip document_root prefix: /var/www/public/wordpress/login/ -> /wordpress/login/
internal redirect with /wordpress/login/ [INTERNAL REDIRECT]

似乎重写并没有在 [L] 标志处停止。

最佳答案

最后在ServerFault上问了同样的问题。我得到了答案。在这里链接以供引用:

https://serverfault.com/questions/739728/laravel-and-wordpress-on-same-server-domain

关于wordpress - Laravel 和 Wordpress 在同一服务器/域上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33939580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com