Kosmonaft
Kosmonaft

Reputation: 1343

Redirect url with .htaccess

I m sure that many people will say that this is duplicated but I try everything from other "Question"`s and nothings work for me.

The problem is that I move my project to the web server. In this server I have folder "public_html" where I but my project Symfony. Now to enter on my project I must write the following url: www.mydomain.com/Symfony/web/* But I want to write a Rewrite Rule which will redirect from www.mydomain.com/Symfony/web/* to www.mydomain.com/home/*.

To do this I try on 2 different ways with many combination of ReWrite rule.

  1. In my public_html I create a .htaccess folder
  2. I edit the .htaccess in Symfony/web folder

I add the following rule in both file but without success

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteRule ^Symfony/web/(.*)$ www.mydomain.com/home/$1 [L,R=301]

Unfortunately without success. What I`m doing wrong?


My htaccess file look like

And all the time Error 404 Object not found

Symfony/web/.htaccess

DirectoryIndex app.php

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /Symfony/web/

RewriteCond %{THE_REQUEST} \s/+Symfony/web/ [NC]
RewriteRule ^(.*)$ /home/$1 [L,R=301]

RewriteRule ^home/(.*)$ $1 [L,NC]

</IfModule>

It`s redirecting me but I receive again Object not found :( I delete the .htaccess in public_html folder which is the root one for my server

public_html\.htaccess

RewriteEngine On
RewriteRule ^home/(.*)$ /Symfony/web/$1 [L,NC]

Upvotes: 0

Views: 2838

Answers (2)

anubhava
anubhava

Reputation: 785246

1: Place this code in /Symfony/web/.htaccess:

RewriteEngine On
RewriteBase /Symfony/web/

RewriteCond %{THE_REQUEST} \s/+Symfony/web/ [NC]
RewriteRule ^(.*)$ /home/$1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [L]

2: Place this code in /public_html/.htaccess:

RewriteRule ^home/(.*)$ /Symfony/web/$1 [L,NC]

Upvotes: 2

realslacker
realslacker

Reputation: 51

I'm going to go out on a limb and say that your rule is backwards. I think you want your URL to be www.mydomain.com/home/* in the browser... In which case the rule would be reversed. Also, your .htaccess should be in the root and you don't need to include the domain in the rewrite rule because you set a rewrite base.

RewriteRule ^home/(.*)$ Symfony/web/$1 [L,R=301]

Upvotes: 0

Related Questions