vhost htaccess .htaccess symfony mod-rewrite

.htaccess - htaccess - symfony rewrite



reglas de reescritura de symfony2.htaccess app.php (5)

Además, ... recuerde descomentar (si se comenta) la configuración de apache:

LoadModule rewrite_module libexec/apache2/mod_rewrite.so

Mac OS X

/private/etc/apache2/httpd.conf

Cargué mi proyecto symfony2 al servidor grove. La página principal se carga, pero todos los enlaces están rotos. Intenté agregar app.php a la dirección web. Funcionó, pero:

Tengo rutas como esta:

www.something.com/app.php/something

Quiero que sean:

www.something.com/something.

Estuve leyendo, y debería poner algunas reglas de reescritura en el .htaccess.

Encontré estas reglas, pero no parecen funcionar:

<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ app.php [QSA,L] </IfModule>



Para mejorar la respuesta de whistlergreg, agregué una línea para que la carpeta de paquetes no esté rota. Esto asegurará que los recursos externos, como las imágenes, no se rompan.

<IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine On # Explicitly disable rewriting for front controllers RewriteRule ^/web/app_dev.php - [L] RewriteRule ^/web/app.php - [L] # Fix the bundles folder RewriteRule ^bundles/(.*)$ /web/bundles/$1 [QSA,L] RewriteCond %{REQUEST_FILENAME} !-f # Change below before deploying to production #RewriteRule ^(.*)$ /web/app.php [QSA,L] RewriteRule ^(.*)$ /web/app_dev.php [QSA,L] </IfModule>


Pruebe esto en su archivo .htaccess (dentro del directorio web):

<IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine On # Explicitly disable rewriting for front controllers RewriteRule ^app_dev.php - [L] RewriteRule ^app.php - [L] RewriteCond %{REQUEST_FILENAME} !-f # Change below before deploying to production #RewriteRule ^(.*)$ /app.php [QSA,L] RewriteRule ^(.*)$ /app_dev.php [QSA,L] </IfModule>


Puede intentar dar la ruta completa a sus activos (url completo). Tuve el mismo problema cuando implementé mi primera aplicación Symfony

Mi directorio raíz (carpeta public_html en la mayoría de los casos) .htaccess file se parece a esto

Options +FollowSymLinks +ExecCGI RewriteEngine On RewriteCond %{HTTP_HOST} ^(www/.)?mydomain/.com$ [NC] RewriteRule !^projectName/ /projectName/web/app.php/%{REQUEST_URI} [L,NC]