By verse
Having problem with my subdomain. Did everything by tutorial and now my subdomain is redirected to main domain. I do not have much experience with this kind of stuff so help would be appreciated. And main domain has SSL so maybe that’s the problem or my hover settings for subdomain are wrong?
demo.domain.com.conf
<VirtualHost *:80>
ServerAdmin admin@demo.domain.com
ServerName demo.domain.com
ServerAlias www.demo.domain.com
DocumentRoot /var/www/demo.domain.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
etc/hosts
myIPadress demo.domain.com
Hover domain
@ A myIPadress
* A myIPadress
mail CNAME mail.hover.com.cust.hostedemail.com
@ MX 10 mx.hover.com.cust.hostedemail.com
www CNAME domain.com
www CNAME demo.domain.com
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Accepted Answer
So finally got it right. Now it’s working.
Changed
www CNAME demo.domain.com
to
demo.domain.com. A myIPaddress
And added .htaccess
in directory
RewriteEngine on
# redirect to https www
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)(domain\.com)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [R=301,L]
# redirect to http subdomain
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^((?!www).+\.demo.domain\.com)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
The following steps worked for me. 1: add virtual host like the following with chmod 664 and chown www-data:www-data
<VirtualHost *:80>
ServerAdmin youemail@sth.com
DocumentRoot /var/www/subdomain
ServerName subdomain.hashmatwaziri.com
ServerAlias www.subdomain.hashmatwaziri.com
<Directory /var/www/subdomain/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<IfModule mod_dir.c>
DirectoryIndex index.php index.pl index.cgi index.html index.xhtml index.htm
</IfModule>
RewriteEngine on
RewriteCond %{SERVER_NAME} =hashmatwaziri.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
2: sudo add-apt-repository ppa:certbot/certbot
(add the repository)
3: sudo apt install python-certbot-apache
(Install Certbot’s Apache package with apt)
4: type “certbot
”
5: select the newly created virtual host
6: and you are all good to go. cheers
Did you enabled your VirtualHost? As I see, you created new file for subdomain VH, if you did it - you need to enable it using a2ensite
:
- sudo a2ensite demo.domain.com
Make sure to restart after any change you do to the config:
- sudo systemctl restart apache2
Try to access subdomain again. If you still see wrong page, try clearing cache or going to Incognito mode.
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.