Support » Fixing WordPress » Need to create an http page not https!

  • AcuteChaos

    (@acutechaos)



    Hey Folks,

    I have a site where a feed they need to stream does not work on a secure page… checked with the content provider and they verified – nope has to be on an http page. So i need to create a single http page that is not under the blanket of the ssl and then i can stream from that page.

    my problem is – how do i do that with wordpress when every page by default is created as an https!

    can’t find a (supported) plugin that will do it. and i want the page created through wordpress so they can update it as any other page.

    thanks for any input you might have!!

Viewing 9 replies - 1 through 9 (of 9 total)
  • Moderator bcworkz

    (@bcworkz)

    WordPress by default will alter the transport to that of the siteurl and home options. So you are normally stuck with whatever that is, typically https. It doesn’t matter how you create a page, there’s no way to specify a transport when making pages. What you can do at least for feeds is to use the “redirect_canonical” filter to detect that particular feed and change that URL’s transport to http.

    Not all URLs go through this filter, so it does not always work, but it appears to work for feeds at least.

    You can do this in your htaccess file and call to the specific page you need to be non secure.

    RewriteEngine On
    # Go to https if not on onepage.html
    RewriteCond %{SERVER_PORT} 80 
    RewriteCond %{REQUEST_URI} !^/onepage.html$ [NC]
    RewriteRule ^(.*)$ https://www.domain.com/$1 [R,L]
    
    # Go to http if you are on onepage.html
    RewriteCond %{SERVER_PORT} !80 
    RewriteCond %{REQUEST_URI} ^/onepage.html$ [NC]
    RewriteRule ^(.*)$ http://www.domain.com/$1 [R,L]
    

    thanks for the input. Very much appreciate it. Not wanting to get into php which I gather is how you use redirect_canonical, I will give the htaccess file a shot!

    Now I have limited experience with them so – Is all I am changing in your example Stefster is wherever onepage.html (which in the case would be onepage.php I guess) appears in the code, as well as the domain.com Or is the port number something I need to figure out?

    Thanks again – I really appreciate the help on this one!

    I was hoping there would be a plugin to tend to this but as my google searches for help didn’t bare any fruit, I am guessing this isn’t a common issue.

    You’re not putting either. It’s just an example.

    It would be whatever the slug is for the page. So for instance your domain was is

    example.com/this-page

    You put “this-page” wherever I have that.

    Note that anywhere I have a # is like a comment out or a description. Does that make sense?

    Practice on a staging area first or local server if you do not know how to do this or you will crash your site. I don’t know who your host is but some host won’t allow you access to this file. So just know that.

    sorry for not responding sooner. some real weather and power issues here for a few days…

    thank you for the clarification. I played with the file and the example you provided. I know the server is recognizing it as it crashes when I alter things improperly but I can’t get it to work as desired. Did some searches to make sure I am putting it in the right place etc. as there is already code there. (#begin Word Press stuff)

    When I load the page in a browser https://blahblah I can manually remove the s so the address is http://blahblah and the page loads, insecurely as desired. So I know at least there isn’t something somewhere else stopping it from loading the way I want.

    The only code I need to address in your example is changing ‘onepage.html’ where ever it appears and the domain. Correct?

    I removed the two comment lines, changed the ‘onepage.html’ in both spots and the domain in both spots. It didn’t work.

    As this is a WordPress site I am not actually addressing files, I am redirecting a folder name not a file name like onepage.html – does that make a difference? i.e. RewriteCond %{REQUEST_URI} !^/foldername$ [NC]

    Should it have a / after the foldername – – – RewriteCond %{REQUEST_URI} !^/foldername/$ [NC]

    Thanks for your help. I really appreciate it as I am in a bit of a spot if I can’t get this going!

    Moderator bcworkz

    (@bcworkz)

    Why don’t you tell us what the requested URL is? Then we can give more accurate advice. We don’t need the domain, just everything after the TLD (.com, .info, etc.). If it’s the feed for the entire site, wouldn’t it be simply either /feed/ or /feed ? The trailing slash being optional affects the resulting regexp as well. If anything might come after the folder that’s part of the path, we need to know that too. But not query arguments that come after any ? in the URL. Those don’t matter.

    It is not a feed for the entire site. I have to have it done this way because what I need to stream can only be done with a non-secure page. The code is supplied and is embedded in one page.

    https://mydomain.com/this-address

    I need to direct to

    http://mydomain.com/this-address

    Hope that is more clear? thank you again for the help!

    This is the code I am using in my htaccess file:

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    # END WordPress

    RewriteEngine On
    RewriteCond %{SERVER_PORT} 80
    RewriteCond %{REQUEST_URI} !^/this-address$ [NC]
    RewriteRule ^(.*)$ https://mydomain.com/this-address/$1 [R,L]

    RewriteCond %{SERVER_PORT} !80
    RewriteCond %{REQUEST_URI} ^/this-address$ [NC]
    RewriteRule ^(.*)$ https://mydomain.com/this-address/$1 [R,L]

    Nothing is affected on the site when this new code is added. If I input improperly I sure get results! Just not the kind I want. lol I’ve spent the last couple days playing with code. Looking through other sites for input. Trying different kinds of redirects. Nothing is working. Again if I manually remove the ‘s’ from the address in the browser it loads up in http for me but I can’t get a redirect to do it automatically.

    Any ideas?

    thanks!

    Moderator bcworkz

    (@bcworkz)

    Move the default WP section to the bottom of .htaccess . It almost always should occur last, allowing all other rules to be applied first. Even if this would not address your issue, it should be done anyway.

Viewing 9 replies - 1 through 9 (of 9 total)
  • You must be logged in to reply to this topic.