WordPress项目旁边的Laravel项目(在public_html文件夹中)

nie*_*lsv 18 php wordpress .htaccess http laravel

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

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

有以下路线:

  • API/licenseplate
  • API /日历
  • 认证/注册
  • 管理/设置
  • 管理员/约会
  • 约定
  • ...

所以URL的一个例子是http://domain.com/appointment.

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

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

mnv*_*mnv 12

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

/var
     /www
         /laravel
             /public
                 /wp #(symlink to -> /var/www/wordpress/public_html)
                 index.php
                 .htaccess
         /wordpress
             /public_html
                 index.php
                 .htaccess
Run Code Online (Sandbox Code Playgroud)

并在.htaccess中描述Laravel路线.代码示例/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>
Run Code Online (Sandbox Code Playgroud)

代码/var/www/wordpress/public_html/.htaccess(只是你的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
Run Code Online (Sandbox Code Playgroud)