Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    [pfsense-2.3.1] captive portal redirect-url before auth

    Scheduled Pinned Locked Moved Captive Portal
    37 Posts 17 Posters 23.0k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      aurel
      last edited by

      so i'm test config from scratch (i delete the old portal and recreate it)

      Now loop stop but stay on blank page

      https://domain.com:8003/index.php = blank page
      and
      https://domain.com:8003/index.php?zone=zone_name = blank page

      1 Reply Last reply Reply Quote 0
      • V
        vikram29
        last edited by

        Hi All,

        Me too facing a similar issue.

        I need to show a video before authenticating. The video shows correctly before authentication but it doesn't redirect to the CP.
        I placed a link on the video page http://10.10.10.1:8002/?zone=local and also http://10.10.10.1:8002/index.php but both return a blank page when the link is clicked.
        Me too running 2.3 version.

        Please help.

        Regards,
        Vikram

        1 Reply Last reply Reply Quote 0
        • GertjanG
          Gertjan
          last edited by

          @aurel:

          https://domain.com:8003/index.php = blank page
          and
          https://domain.com:8003/index.php?zone=zone_name = blank page

          Basic - normal 'http' works ? If so, its a https (SSL == certificate issue ?)
          If not, it could be a DNS "domain.com" issue (pfSense needs to knwo who "domain.com" so it can inform the client, because browser can not work with "domain.com", they use "IP/index.php like 192.168.2.1/index.php. If the translation "domain.com" to "192.168.2.1" (done by pfSense) doesn't work, then do not use "domain.com" (which has to be used if you activated "https" login - certoficates works with domaine names, nt IP's), or do not use https.

          Btw : go here and read the very first subject https://forum.pfsense.org/index.php?board=2.0 not all is important for you, but it shwon what need to be done so https login works.
          Actually, it explain how to set up a https web server (the one used by pfSense which presents a login page to the visitor) - it can be pretty daunting if it is your first time …..

          No "help me" PM's please. Use the forum, the community will thank you.
          Edit : and where are the logs ??

          1 Reply Last reply Reply Quote 0
          • A
            aurel
            last edited by

            Hey
            With ip address it is the same problem
            Https work find whitout pre-auth redirect URL, it is really in this case when you want tout go back from the page to CP index

            1 Reply Last reply Reply Quote 0
            • V
              vikram29
              last edited by

              Hey,

              The problem is solved. Using different method although.
              Reference post https://forum.pfsense.org/index.php?topic=4937.msg61808#msg61808

              Regards,
              Vikram

              1 Reply Last reply Reply Quote 0
              • A
                aurel
                last edited by

                No it is a different method but this problem is not solved. ;)

                1 Reply Last reply Reply Quote 0
                • GertjanG
                  Gertjan
                  last edited by

                  I agree, I do not understand  what the difference is between:
                  "Pre-authentication redirect URL" (html : preauthurl)
                  and
                  "After authentication Redirection URL" (html : redirurl)

                  If "After authentication Redirection URL" is set (and only that one) with an URL, I get redirected to that page after login.
                  If "Pre-authentication redirect URL" is set (and only that one), I get redirected to that page after login.

                  Now, check out the code in /etc/inc/captiveportal.inc - line 1952.
                  The codes explains what happening ….. but now, what is the meaning of "Pre-authentication redirect URL" if both "Pre-authentication redirect URL" and "After authentication Redirection URL" are present (the second overwrites the first when both set)

                  Do you need the "Pre-authentication redirect URL"  page ? (which means to me : before the login page, visitor are redirected else where )

                  No "help me" PM's please. Use the forum, the community will thank you.
                  Edit : and where are the logs ??

                  1 Reply Last reply Reply Quote 0
                  • A
                    aurel
                    last edited by

                    "Pre-authentication redirect URL" (html : preauthurl)
                    and
                    "After authentication Redirection URL" (html : redirurl)

                    In fact if you want "force" user to see something else for exemple contract agreement, advertising etc.. you use pre-authentication redirect URL.

                    After user logon the captive portal he is redirect to a website (for exemple a famous search engine ;) ) but he can go where he want ….before not

                    1 Reply Last reply Reply Quote 0
                    • GertjanG
                      Gertjan
                      last edited by

                      @aurel:

                      In fact if you want "force" user to see something else for exemple contract agreement, advertising etc.. you use pre-authentication redirect URL.

                      After user logon the captive portal he is redirect to a website (for exemple a famous search engine ;) ) but he can go where he want ….before not

                      Yep, that's what I make of it ….

                      But, if you can 'read' some PHP :
                      @Gertjan:

                      Now, check out the code in /etc/inc/captiveportal.inc - line 1952.

                      which I find surprising.

                      No "help me" PM's please. Use the forum, the community will thank you.
                      Edit : and where are the logs ??

                      1 Reply Last reply Reply Quote 0
                      • J
                        julio_cdn
                        last edited by

                        @aurel:

                        The problem is not of url but of this code

                        it doesn't works in 2.3 version can you help me

                        Usar el sgte codigo

                        o en todo caso agregar la linea , a su portal que ya tengan.

                        Saludos

                        
                        require("globals.inc");
                        $request_uri = urldecode(str_replace("/index.php?redirurl=", "",  $_SERVER["REQUEST_URI"]));
                        $portal_redirurl = urldecode("$PORTAL_REDIRURL$");
                        if(!stristr(urldecode("$PORTAL_REDIRURL$"), $request_uri)) {
                        	Header("Location: $PORTAL_REDIRURL$");
                        	exit;
                        }
                        ?>
                        
                        
                        1 Reply Last reply Reply Quote 0
                        • empbillyE
                          empbilly
                          last edited by

                          For me was happening the same problem. I have a custom page to make the user login, but after the update did not occur redirection. I checked my .html file and noticed a slight difference. The code below was missing.

                          P.S. At the configuration page of the captive portal has this information.

                          Example code for the form:
                          
                          

                          I put this entry and voila !!! It worked!!! In 2.2.6 version I didn't have this line and was working normal.

                          Some explanation?

                          https://eliasmoraispereira.wordpress.com/

                          1 Reply Last reply Reply Quote 0
                          • G
                            ghinthsh
                            last edited by

                            @empbilly:

                            For me was happening the same problem. I have a custom page to make the user login, but after the update did not occur redirection. I checked my .html file and noticed a slight difference. The code below was missing.

                            P.S. At the configuration page of the captive portal has this information.

                            Example code for the form:
                            
                            

                            I put this entry and voila !!! It worked!!! In 2.2.6 version I didn't have this line and was working normal.

                            Some explanation?

                            Nice to know CP works in 2.3

                            I'll try it later i hope it is the same for pfsense 2.3 clean installation using the same procedure.

                            1 Reply Last reply Reply Quote 0
                            • A
                              aurel
                              last edited by

                              yes in 2.3 you must change index page and add the zone field

                              for me it's when i use the pre-redirurl before authentication

                              i can't return on the captive portal to connect me

                              the url

                              https://hotspot.domain.com:8005/index.php?zone=zone_name

                              loop on pré-redirurl page

                              i think that code below is a part of my problem

                              
                              $request_uri = urldecode(str_replace("/index.php?redirurl=", "",  $_SERVER["REQUEST_URI"]));
                              $portal_redirurl = urldecode("$PORTAL_REDIRURL$");
                              if(!stristr(urldecode("$PORTAL_REDIRURL$"), $request_uri)) {
                              	Header("Location: $PORTAL_REDIRURL$");
                              	exit;
                              }
                              
                              
                              1 Reply Last reply Reply Quote 0
                              • GertjanG
                                Gertjan
                                last edited by

                                @aurel:

                                the url
                                https://hotspot.domain.com:8005/index.php?zone=zone_name
                                loop on pré-redirurl page

                                Maybe.
                                But who is gonna use an URL like that ?

                                My setup permits me to :
                                People visit a http site (let's say : http://www.google.com)
                                They are intercepted, and redirected to my captive portal page : (which is : https://portal.my-pfsense-domain.tld/….. but who cares)
                                They identify themselves.
                                When accepted, they are redirect to the initial URL they were requesting, in this case http://www.google.com

                                No "help me" PM's please. Use the forum, the community will thank you.
                                Edit : and where are the logs ??

                                1 Reply Last reply Reply Quote 0
                                • A
                                  aurel
                                  last edited by

                                  for me

                                  https://doc.pfsense.org/index.php/Captive_Portal_Pre-authentication_Redirect

                                  not working on 2.3

                                  can i open a bug in pfsense redmine project ?

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    Riroxi
                                    last edited by

                                    same issue here on 2.3

                                    1 Reply Last reply Reply Quote 0
                                    • R
                                      Riroxi
                                      last edited by

                                      Got the trick.

                                      To Pre-authentication redirect URL works, just remove this line:

                                      require("globals.inc");

                                      From the official help: https://doc.pfsense.org/index.php/Captive_Portal_Pre-authentication_Redirect

                                      Then, the code will look like this:

                                      
                                      $request_uri = urldecode(str_replace("/index.php?redirurl=", "",  $_SERVER["REQUEST_URI"]));
                                      $portal_redirurl = urldecode("$PORTAL_REDIRURL$");
                                      if(!stristr(urldecode("$PORTAL_REDIRURL$"), $request_uri)) {
                                              Header("Location: $PORTAL_REDIRURL$");
                                              exit;
                                      }
                                      ?>
                                      

                                      Upload to Portal page contents and be happy

                                      Works fine to me.

                                      Cya

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        aurel
                                        last edited by

                                        yes i remove this line but how can you return on captive portal page to logon ?

                                        this url not working :

                                        The user will be redirected to that URL, and then when the user clicks back to pfSense using a link to the firewall IP address/port, such as http://x.x.x.x:8002/index.php, the referring URL will match the original landing page and the redirect will not happen that time

                                        This still not working on 2.3.1

                                        1 Reply Last reply Reply Quote 1
                                        • T
                                          tamduong
                                          last edited by

                                          I have same problem with the preauthen page cant redirect to the portal page by method action"IPpfsense:8002/index.php" It show the blank page. Please help me solve this problem

                                          1 Reply Last reply Reply Quote 0
                                          • empbillyE
                                            empbilly
                                            last edited by

                                            @tamduong:

                                            I have same problem with the preauthen page cant redirect to the portal page by method action"IPpfsense:8002/index.php" It show the blank page. Please help me solve this problem

                                            You have a custom redirect page? If Yes, post here.

                                            https://eliasmoraispereira.wordpress.com/

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.