Skip to content
View in the app

A better way to browse. Learn more.

Web Designer Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Why is my link not working?

Featured Replies

I am developing a website at http://choir-stmaryssaffronwalden.org. Every request to this URL is forwarded by framed forwarding to my web server at sylvesterbradley.org. Links on my web pages don't work. For example, if you go to http://choir-stmaryssaffronwalden.org and then click the Help on this Page button, it correctly goes to the Help page. If you then click on the Login link in the breadcrumb trail, which is a link <a href="http://choir-stmaryssaffronwalden.org/index.php">Login</a>, it just sits there and doesn't do anything. If I enter the linked URL http://choir-stmaryssaffronwalden.org/index.php into a new browser tab, then it works fine. 

Can you explain why these links are not working? What do I have to do to make my links work correctly in this situation?

Many thanks - Rowan

It's working for me.

But....

This method of building a website is about as bad as it gets. Hosting is cheap as chips, there is no need to use framesets and redirects.

  • Author

I seem to have found a way of getting this to work. I have to include in each <a> element an attribute target='mainframe'. Then it seems to be able to send the request to the right place. I don't really understand why this is. What is the browser trying to do with a link pointing to http://choir-stmaryssaffronwalden.org/index.php if I don't include the target attribute? This URL seems complete and unambiguous to me, so I don't understand why the browser can't find it when the link is included in a frame, although it CAN find it when you enter the URL into the address bar.

Thanks - Rowan

That's good, but it's still a really horrible way to build a website.

Why can't you just build a stand alone website and add it to your hosting package as a sub-domain?

Note also that it's not https which means the login won't be encrypted - something you need to be wary of.

 

  • Author

Now I have the equivalent problem with submit buttons. Here is my code:

<button type="submit" formaction="http://choir-stmaryssaffronwalden.org/edit_member.php" name="memberlink04">See&nbsp;your&nbsp;Profile</button>

The URL http://choir-stmaryssaffronwalden.org/edit_member.php works fine on its own, but when the above button is included in a frame, then when you click the button, nothing at all happens. I suppose that I need to do something equivalent to target='mainframe' but how do I do that in a button?

Thanks - Rowan

  • Author

>Why can't you just build a stand alone website and add it to your hosting package as a sub-domain?

Because I don't want users to know that actually this is hosted on my personal web server. 

>it's not https which means the login won't be encrypted

I know this. My domain name registrar (123-reg.co.uk) tells me that for some reason that they haven't explained, they can't do web forwarding with https URLs. I have pointed out to them that nearly everyone will want to do this, partly just to get rid of the nasty "Not Secure" message that browsers nowadays put up, but so far they haven't responded.

Thanks - Rowan

39 minutes ago, rowan.bradley said:

Because I don't want users to know that actually this is hosted on my personal web server.

They won't. A whois query just tells anyone the site is hosted in Germany on a server with 650,000 other websites

39 minutes ago, rowan.bradley said:

I know this. My domain name registrar (123-reg.co.uk) tells me that for some reason that they haven't explained, they can't do web forwarding with https URLs. I have pointed out to them that nearly everyone will want to do this, partly just to get rid of the nasty "Not Secure" message that browsers nowadays put up, but so far they haven't responded.

It's because your site isn't https. You can't put a secure frame inside an unsecure site.

PS: Your site isn't registered with 123reg. According to whois it's registered with wildwestdomains.com and hosted by totalchoicehosting.com

http://whois.domaintools.com/sylvesterbradley.org

Edited by fisicx

  • Author

Now I have the equivalent problem with submit buttons. Here is my code:

<button type="submit" formaction="http://choir-stmaryssaffronwalden.org/edit_member.php" name="memberlink04">See&nbsp;your&nbsp;Profile</button>

The URL http://choir-stmaryssaffronwalden.org/edit_member.php works fine on its own, but when the above button is included in a frame, then when you click the button, nothing at all happens. I suppose that I need to do something equivalent to target='mainframe' but how do I do that in a button?

Thanks - Rowan

  • Author

>They won't. 

I think they will. The fact that the URL is sylvesterbradley.org is a bit of a giveaway.

>It's because your site isn't https

I can access my site using either https or http. What do I have to do to "make my site https"? I can write a rewrite rule that makes the browser redirect to https://sylvesterbradley.org when the user inputs http://sylvesterbradley.org, but as far as I can see I can't do this for the domain choir-stmaryssaffronwalden.org (which is what I need to do to force the site to use https), because I don't have access to the .htaccess file on the 123-reg server.

>Your site isn't registered with 123reg.

My domain choir-stmaryssaffronwalden.org is registered with 123-reg. That's what I was referring to. It is them that told me that their web forwarding system would not work with https. I think they mean that it wont work with either the user URL https://choir-stmaryssaffronwalden.org or with the target of the redirection being https://sylvesterbradley.org

Thanks - Rowan

Edited by rowan.bradley

  • Author
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
  <html lang="en">
  <head><title>St. Mary's Saffron Walden Choir</title>
  <meta name="Keywords" content="choir choral church singing hymn anthem"><link rel="shortcut icon" href="https://sylvesterbradley.org/choir/images/tickicon.png"></head>
  <frameset rows="100%">
  <frame title="https://sylvesterbradley.org/choir" src="https://sylvesterbradley.org/choir" name="mainframe" frameborder="0" noresize="noresize" scrolling="auto">
  <noframes>Sorry, you don"t appear to have frame support.
  Go here instead - <a href="https://sylvesterbradley.org/choir">St. Mary's Saffron Walden Choir</a></noframes>
 

</frameset>

 

Am I right to think that the browser will fetch the frame using SSL, and that the request for the next page (which contains the user's username and password entries) will be sent using SSL? If not, why not? How do I make it more secure than this?

Thank you - Rowan

I still don't get why you have to use frames.

If you are already paying for hosting just create an addon domain and point the nameservers to this.

It will solve all your problems.

  • Author

I believe my hosting company will not allow me to use one hosting account to host more than one web-site, or more than one domain (even though the amount of space taken by these sites, and the traffic generated, is only a small fraction of what I'm allowed on one account).

This is why I decided to use framed forwarding.

Rowan

Find a new host. One with their servers in the UK.

Hosting is really cheap, and most will allow you to add subdomains.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.