WordPress项目旁边的Laravel项目(在public_html文件夹中) [英] Laravel project next to Wordpress project (in public_html folder)

查看:257
本文介绍了WordPress项目旁边的Laravel项目(在public_html文件夹中)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的 public_html 文件夹中有 Laravel 项目。域名例如 domain.com 我的.htaccess文件(在public_html文件夹中)是这样的:

I have a Laravel project in my public_html folder. The domain is for example domain.com My .htaccess file (in public_html folder) is like this:

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

有以下路线:


  • api / licenseplate

  • api / calendar

  • auth / login

  • admin / settings

  • admin / appointmentments

  • 预约

  • ...

  • api/licenseplate
  • api/calendar
  • auth/login
  • admin/settings
  • admin/appointments
  • appointment
  • ...

所以网址的示例是 http://domain.com/appointment

So an example of a URL is http://domain.com/appointment.

现在我想在domain.com上有一个wordpress网站。因此,当您访问domain.com时,您会看到wordpress网站。但是我也希望得到像我的laravel项目/ @约会的网址。

Now I would like to have a wordpress website on domain.com. So when you go to domain.com you see the wordpress website. But I also want to have the urls like /appointment of my laravel project.

最简单,最干净的方法是什么?

What's the easiest and cleanest way to do this?

推荐答案

您可以在Laravel文件夹中创建符号链接到Wordpress公共目录。例如, wp

You can create symlink to Wordpress public directory in Laravel folder. For example, wp:

/var
     /www
         /laravel
             /public
                 /wp #(symlink to -> /var/www/wordpress/public_html)
                 index.php
                 .htaccess
         /wordpress
             /public_html
                 index.php
                 .htaccess

并在.htaccess中描述Laravel路线。代码示例 /var/www/laravel/public/.htaccess

And describe Laravel routes in .htaccess. Example of code of /var/www/laravel/public/.htaccess:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    RewriteCond %{ENV:REDIRECT_FINISH} .
    RewriteRule ^ - [L]

    # Laravel

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteCond %{REQUEST_FILENAME} !.*\.php$
    RewriteRule ^(.*)$ $1 [E=FINISH:1,L]

    RewriteCond %{REQUEST_URI} ^/(api/licenseplate)(\?.*|$) [OR]
    RewriteCond %{REQUEST_URI} ^/(api/calendar)(\?.*|$) [OR]
    RewriteCond %{REQUEST_URI} ^/(admin/settings)(\?.*|$) [OR]
    RewriteCond %{REQUEST_URI} ^/(admin/appointments)(\?.*|$) [OR]
    RewriteCond %{REQUEST_URI} ^/(appointment)(\?.*|$) [OR]
    RewriteCond %{REQUEST_URI} ^/(auth/login)(\?.*|$)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [E=FINISH:1,L]

    # Wordpress

    RewriteCond %{REQUEST_URI} !^/wp
    RewriteRule ^(.*)$ /wp/$1 [E=FINISH:1,L]

</IfModule>

代码 /var/www/wordpress/public_html/.htaccess (只是你的wordpress .htaccess的副本):

Code of /var/www/wordpress/public_html/.htaccess (just copy of your wordpress .htaccess):

# BEGIN WordPress

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

# END WordPress

这篇关于WordPress项目旁边的Laravel项目(在public_html文件夹中)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆