• Hello. I’m trying to move a website from an old Plesk server and all the old URLs are https://www.domain.com/index.php/page-name/ however now on GoDaddy when going to to any other page other then the home page i get “No input file specified” when i use that URL structure. however domain.com/index.php redirects to domain.com

    • This topic was modified 2 years, 7 months ago by Yui. Reason: moved to fixing wordpress

    The page I need help with: [log in to see the link]

Viewing 10 replies - 1 through 10 (of 10 total)
  • Have you asked the GoDaddy team for help? They should be able to help you sort out the correct configuration.

    Thread Starter mcsmetro

    (@mcsmetro)

    I did, they said it wasn’t their problem and i’m using “unsupported software”. even tho i’m on a Managed WordPress plan.

    Moderator bcworkz

    (@bcworkz)

    Unless .php occurs at the end of the URL, it’s not seen as a proper file request. So then WP tries to find a page post type named index.php, which is an invalid page name slug. Thus nothing works right.

    You either need to setup the WP permalink structure to include index.php in all URLs; or my preference, set up a rewrite rule in .htaccess that strips out index.php/ and rewrites with a 301 status response, indicating the the URL https://www.domain.com/page-name/ is now the proper URL to use for that page. Assuming that is your correct permalink structure for the current site. With a 301 redirect, the new proper URL should inherit whatever SEO juice the previous URL has.

    If you really wanted index.php to work as intended, the URL needs to be more like https://www.domain.com/index.php?page_name=my-page-name. But WP doesn’t need index.php in its URLs if the server is configured correctly and you have pretty permalinks enabled.

    Thread Starter mcsmetro

    (@mcsmetro)

    My Permalinks are currently set to /%postname%/ and my .htaccess is:

    # BEGIN WordPress
    # The directives (lines) between "BEGIN WordPress" and "END WordPress" are
    # dynamically generated, and should only be modified via WordPress filters.
    # Any changes to the directives between these markers will be overwritten.
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
    # END WordPress

    But it wont rewrite /index.php/reservations-hp/ to /reservations-hp/. It give me No input file specified. am I missing something? is my .htaccess not correct?

    • This reply was modified 2 years, 7 months ago by mcsmetro.
    Moderator bcworkz

    (@bcworkz)

    That’s all fine for URLs without the index.php. The index.php you see in the rule set is used internally, it doesn’t directly relate to the URL seen in the address bar.

    I investigated a bit more on a plain vanilla, bog standard WP installation with the same permalink structure as yours. The URL example.com/index.php/page-name/ will get rewritten to example.com/page-name/ without any rewrite rules, assuming “page-name” is a valid page name slug. This behavior is not related to any .htaccess rules. It’s due to WP trying to fulfill an ambiguous request.

    By default, the index.php element in our example URL should be the parent page of “page-name”. WP knows there is no such page name, but it can find a “page-name” page with no parent page, so WP ignores the index.php part of the request and serves the page-name URL, while 301 redirecting to its canonical URL example.com/page-name/.

    In other words, WP should properly handle the unnecessary index.php within an URL on its own. No added .htaccess rules needed. I’m not sure what causes a “No input file specified” message. There is no such message in the core WP language files. It’s likely due to a plugin you’re using. Does this happen to only the index.php/reservations-hp request, or any page request including index.php?

    As a test, deactivate all plugins, then visit the permalinks settings screen. The permalinks screen will flush and regenerate rewrite rules on load. No need to change or save anything, just load the screen. Now index.php/reservations-hp/ should load the page with that slug and 301 redirect to its canonical URL.

    To narrow down which plugin was responsible for the no input file message, reactivate each plugin, one at a time, also revisiting permalinks settings each time. When you get the no input file message again, the last activated plugin is the cause. Seek assistance through that plugin’s dedicated support channel on what you should do so the normal WP 301 redirect process can properly occur.

    Thread Starter mcsmetro

    (@mcsmetro)

    I deactivated all my plugins and reloaded the permalinks. still get the error. and it happens on all pages. just using /reservations-hp/ as the example.

    Moderator bcworkz

    (@bcworkz)

    Hmmm… something is not as it should be. Be sure caching isn’t somehow interfering. Are you using any sort of server side caching or proxy service? Flush your local browser cache for good measure. Not only deactivate all plugins, also switch to one of the default twenty* themes. That’ll be as plain vanilla as you can get.

    If the behavior still persists after that, your core WP installation may have become corrupted. Try performing a manual update to the latest version. (even if you’re already up to date)

    So I logged into phpmyadmin from Godaddy and I was able to adjust the rewrite_rules property. I don’t know if I should have done this … BUT … I went to my Godaddy admin panel to change the PHP version to a different value to force a site reload. I don’t know if that was necessary. However, I went from a blank screen for my site-editor (and all the failures you mentioned) to a working site-editor page! Success?

    The catch is … that value was re-applied after I cleared it.

    Still looking to see what the rhyme or reason is.

    Forgot to mention. But I had just opened a new Godaddy account, selected a managed WordPress host plan, and imported my site from a self-hosted URL.

    Things appeared OK, but no theme editor worked. The public landing pages and associated dashboards were all working as expected.

    Something strange with their import, I think. I assume you had similar steps?

    Thread Starter mcsmetro

    (@mcsmetro)

    After going around and around with GoDaddy Support they refused to even acknowledge that there was a problem or if there was it wasn’t their problem. I gave up and ended up using CloudWays for hosting the site. Everything is working great over there.

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘/index.php URL Paths Not Working on GoDaddy’ is closed to new replies.