I installed the Drupal website in this path:
/var/www/html/ Below I show the virtual host configuration file testdrupal.localhost:
<Directory /var/www/html/testdrupal.localhost> Require all granted </Directory> <VirtualHost *:80> ServerName testdrupal.localhost ServerAlias ServerAdmin webmaster@localhost DocumentRoot /var/www/html/ ErrorLog /var/www/html/ CustomLog /var/www/html/ combined </VirtualHost> When I access the url I correctly see the start page of Drupal, but when I click on the login link, I get a 404 error.
The URL shown on the browser's address bar is:
I also verified that:
2 Answers
Might a bit old and you probably fixed this, but i'll post the answer so that it might help others.
<VirtualHost *:80> DocumentRoot /var/www/html/my_project/docroot ServerName ${alias} ServerAlias ${alias} <Directory /var/www/html/my_project/docroot> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> ${alias} = is the name you wrote in the hosts file, next to the IP address of localhost
I was running into the same problem. After days of trial and error I found the solution.
I had to change the location of the index.php in the .htaccess file as it was mentioned in Drupal's advice
Old setting:
# Pass all requests not referring directly to files in the filesystem to # index.php. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^ index.php [L] New setting:
# Pass all requests not referring directly to files in the filesystem to # index.php. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^ /drupal/index.php [L]