Есть ли способ скрыть и перенаправить URL с помощью правила перезаписи? - PullRequest
0 голосов
/ 30 апреля 2020

[Отредактировано] Привет. Было много примеров того, как сделать то, чего я пытаюсь достичь, но, похоже, я не понимаю их правильно, поэтому обращаюсь за помощью. Пожалуйста, не закрывайте это как дубликат,

У меня WordPess установлен как основной веб-сайт, как это https://www.example.com/

apache конфигурация похожа на эту

    #ServerName www.example.com
    ServerName example.com
    ServerAdmin example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/html/example/web
    Header set Access-Control-Allow-Origin "*"
    SSLEngine on

    SSLCertificateFile /etc/ssl/certificate/example.com/mydomain.crt
    SSLCertificateKeyFile /etc/ssl/certificate/example.com/mydomain.key
    SSLCertificateChainFile /etc/ssl/certificate/example.com/mydomain.ca-bundle
    <Directory /var/www/html/example/web>
            AllowOverride All
            Order allow,deny
            allow from all
            #AuthType Basic
            #AuthName "Restricted Content"
            #AuthUserFile /etc/apache2/.htpasswd
            # Require valid-user </Directory>

Теперь мне нужно поместить проект 3 laravel в веб-каталог

> mydomain
>  - web (wordpress)
>    - en  ( Laravel project)
>    - bn  (laravel project)
>    - demo (laravel project)

Теперь, когда я печатаю, как это, он открывает. Как его php laravel проект.

https://example.com/demo/public/
https://example.com/demo/public/home
https://example.com/demo/public/login

https://example.com/en/public/ 
https://example.com/bn/public/

Тем не менее, я хочу переписать правила таким образом, что когда какой-нибудь один тип

https://example.com/demo/ -> it will provide data from   https://example.com/demo/public/    but url will be https://example.come/demo
https://example.com/bn/ -> it will provide data from  https://example.com/bn/public/ but url will be https://example.com/bn

https://example.com/en/ -> it will provide data from  https://example.com/en/public/ but url will be https://example.com/en

, так что все страницы после / public / * будут / demo / * или / BN / * или / EN / *

Я отредактировал .httaccess в / web / demo / с нижеуказанным ref: https://laracasts.com/discuss/channels/laravel/wordpress-and-laravel-on-subfolder?page=1

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

но когда я набираю https://example.com/demo/

это дает 404, которые поступают с laravel.

любая помощь будет признательна.

...