Skip to content

moving flarum from sub directory to subdomain

Solved Configure
  • @hari

    there is nginx.conf file in ask directory

    So are you using Apache or NGINX ?

  • @phenomlab idk i think i am using apache. how to check?

    3906164f-2b98-4124-b45d-e6b2db007fb2-image.png

  • @hari ok, what you have here is NGINX acting as a reverse proxy to Apache. This means you should make the changes in the Apache .htaccess file.

  • @phenomlab sir, what changes i need to make?

  • @phenomlab yes added thse lines

    <Directory "/public">
        AllowOverride All
    </Directory>
    
    <IfModule mod_rewrite.c>
      RewriteEngine on
    
       
      # Ensure the Authorization HTTP header is available to PHP
      RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    
      # Uncomment the following lines if you are not using a `public` directory
      # to prevent sensitive resources from being exposed.
       RewriteRule /\.git / [F,L]
       RewriteRule ^composer\.(lock|json)$ / [F,L]
       RewriteRule ^config.php$ / [F,L]
       RewriteRule ^flarum$ / [F,L]
       RewriteRule ^storage/(.*)?$ / [F,L]
       RewriteRule ^vendor/(.*)?$ / [F,L]
    
      # Pass requests that don't refer directly to files in the filesystem to index.php
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^ index.php [QSA,L]
    </IfModule>
    
    <Directory "/public">
        AllowOverride All
    </Directory>
    
    # Disable directory listings
    Options -Indexes
    
    # MultiViews can mess up our rewriting scheme
    Options -MultiViews
    
    # The following directives are based on best practices from H5BP Apache Server Configs
    # https://github.com/h5bp/server-configs-apache
    
    # Expire rules for static content
    <IfModule mod_expires.c>
      ExpiresActive on
      ExpiresDefault                                      "access plus 1 month"
      ExpiresByType text/css                              "access plus 1 year"
      ExpiresByType application/atom+xml                  "access plus 1 hour"
      ExpiresByType application/rdf+xml                   "access plus 1 hour"
      ExpiresByType application/rss+xml                   "access plus 1 hour"
      ExpiresByType application/json                      "access plus 0 seconds"
      ExpiresByType application/ld+json                   "access plus 0 seconds"
      ExpiresByType application/schema+json               "access plus 0 seconds"
      ExpiresByType application/vnd.geo+json              "access plus 0 seconds"
      ExpiresByType application/vnd.api+json              "access plus 0 seconds"
      ExpiresByType application/xml                       "access plus 0 seconds"
      ExpiresByType text/calendar                         "access plus 0 seconds"
      ExpiresByType text/xml                              "access plus 0 seconds"
      ExpiresByType image/vnd.microsoft.icon              "access plus 1 week"
      ExpiresByType image/x-icon                          "access plus 1 week"
      ExpiresByType text/html                             "access plus 0 seconds"
      ExpiresByType application/javascript                "access plus 1 year"
      ExpiresByType application/x-javascript              "access plus 1 year"
      ExpiresByType text/javascript                       "access plus 1 year"
      ExpiresByType application/manifest+json             "access plus 1 week"
      ExpiresByType application/x-web-app-manifest+json   "access plus 0 seconds"
      ExpiresByType text/cache-manifest                   "access plus 0 seconds"
      ExpiresByType text/markdown                         "access plus 0 seconds"
      ExpiresByType audio/ogg                             "access plus 1 month"
      ExpiresByType image/bmp                             "access plus 1 month"
      ExpiresByType image/gif                             "access plus 1 month"
      ExpiresByType image/jpeg                            "access plus 1 month"
      ExpiresByType image/png                             "access plus 1 month"
      ExpiresByType image/svg+xml                         "access plus 1 month"
      ExpiresByType image/webp                            "access plus 1 month"
      ExpiresByType video/mp4                             "access plus 1 month"
      ExpiresByType video/ogg                             "access plus 1 month"
      ExpiresByType video/webm                            "access plus 1 month"
      ExpiresByType application/wasm                      "access plus 1 year"
      ExpiresByType font/collection                       "access plus 1 month"
      ExpiresByType application/vnd.ms-fontobject         "access plus 1 month"
      ExpiresByType font/eot                              "access plus 1 month"
      ExpiresByType font/opentype                         "access plus 1 month"
      ExpiresByType font/otf                              "access plus 1 month"
      ExpiresByType application/x-font-ttf                "access plus 1 month"
      ExpiresByType font/ttf                              "access plus 1 month"
      ExpiresByType application/font-woff                 "access plus 1 month"
      ExpiresByType application/x-font-woff               "access plus 1 month"
      ExpiresByType font/woff                             "access plus 1 month"
      ExpiresByType application/font-woff2                "access plus 1 month"
      ExpiresByType font/woff2                            "access plus 1 month"
      ExpiresByType text/x-cross-domain-policy            "access plus 1 week"
    </IfModule>
    
    # Gzip compression
    <IfModule mod_deflate.c>
      <IfModule mod_filter.c>
        AddOutputFilterByType DEFLATE "application/atom+xml" \
                                      "application/javascript" \
                                      "application/json" \
                                      "application/ld+json" \
                                      "application/manifest+json" \
                                      "application/rdf+xml" \
                                      "application/rss+xml" \
                                      "application/schema+json" \
                                      "application/vnd.geo+json" \
                                      "application/vnd.ms-fontobject" \
                                      "application/wasm" \
                                      "application/x-font-ttf" \
                                      "application/x-javascript" \
                                      "application/x-web-app-manifest+json" \
                                      "application/xhtml+xml" \
                                      "application/xml" \
                                      "font/collection" \
                                      "font/eot" \
                                      "font/opentype" \
                                      "font/otf" \
                                      "font/ttf" \
                                      "image/bmp" \
                                      "image/svg+xml" \
                                      "image/vnd.microsoft.icon" \
                                      "image/x-icon" \
                                      "text/cache-manifest" \
                                      "text/calendar" \
                                      "text/css" \
                                      "text/html" \
                                      "text/javascript" \
                                      "text/plain" \
                                      "text/markdown" \
                                      "text/vcard" \
                                      "text/vnd.rim.location.xloc" \
                                      "text/vtt" \
                                      "text/x-component" \
                                      "text/x-cross-domain-policy" \
                                      "text/xml"
        </IfModule>
    </IfModule>
    
    # Fix for https://httpoxy.org vulnerability
    <IfModule mod_headers.c>
      RequestHeader unset Proxy
    </IfModule>
    

    getting 500 error

  • @hari you need the full path to Flarum for it to work

    Screenshot_20220120-212332.jpg

  • @phenomlab i have tired both full path and path

    /home/master/applications/sadfsdaf/public_html/ask
    
    /home/master/applications/sadfsdaf/public_html/ask/public
    

    it is not working and redirecting to the main domain.

    sir, looks like you are somewhere outside i will wait till you come online/get free.

    should i need to edit htaccess of public_html or htaccess of ask folder?

  • @hari should be the ask folder. If you drop me a PM with the server details I’ll have a look at this tomorrow.

    EDIT: I noticed you’ve raised this on Flarum’s forums
    https://discuss.flarum.org/d/29900-how-to-configure-flarum-from-sub-directory-to-subdomain

  • @phenomlab yes,

    created different app and moved files and DB now everything is working ✅

    thanks 🙂

  • Hariundefined Hari has marked this topic as solved on

Did this solution help you?
Did you find the suggested solution useful? Why not buy me a coffee? It's a nice gesture, and a great way to show your appreciation💗