Welcome to the Question2Answer Q&A. There's also a demo if you just want to try it out.
+2 votes
3.3k views
in Q2A Core by
question2answer is not installing on godaddy hosting.

Site : http://feedurn.com/

Godaddy support says question2answer will not work on shared hosting and I need to get VPS or dedicated server.

What do I do?
Q2A version: 1.6.3
by
ok . Check your error log . What you are getting ?
by
I used to host 1.6 with GD, so it should work,you can try giving the Q2A db user full priviledges
by
edited by
hmm interesting, error is not what I had expected.

[15-Dec-2014 06:43:55 UTC] PHP Question2Answer MySQL query error 1146: Table 'feedsqldb.qa_options' doesn't exist - Query: (SELECT 'options' AS selectkey, title, content FROM qa_options) UNION ALL (SELECT 'time', 'db_time', UNIX_TIMESTAMP(NOW()))

This is the only error

user already has full privilages.
SHOW GRANTS FOR CURRENT_USER; reutrns GRANT ALL PRIVILEGES ON `q2adb`.* TO 'q2adbuser'@'localhost'
by
Hmm... It should be work. Maybe they afraid that your site drives so many visitors that can impact to their shared hosting environment. So, they suggest you to purchase their VPS

2 Answers

+1 vote
by
by
and wat can i do to solve it, htaccess didnt work, they support custom php.ini, anything there? can you explain what exactly is godaddy blocking?
by
edited by
You should report to them the error you are experiencing :

(Status-Line)    HTTP/1.1 406 Not Acceptable

See here :
http://www.inmotionhosting.com/support/website/error-numbers/406-error

Ask them to disable the rule(s) on the mod_security that blocks the request.

Your domain is protected by mod_security.

I believe that the reason is the value in the form data :
"Create Database ......"
The mod_security rule on Godaddy hosting is blocking the post believing that the value in form data is an attack with a sql injection ("create database").
As a proof of it, with google developers tools I've modified (on your website directly) the html value of the form data from "Create database including user management" to the string "test", and submitted the form, and I've been able to by-pass the mod_security check and create the database :-)
Try to click on your URL now....
(---> but then delete the database and recreate it, of course....)
by
edited by
This is the line you should change :
https://github.com/q2a/question2answer/blob/v1.6.3/qa-include/qa-install.php#L208
(instead of contacting the Godaddy support)
change the value from :
"Create Database including User Management"
to
"test"
(or to anything else that does not contain the value "Create Database")
by
Probably, this is the violated rule :
SQL Injection Attack (rule id 950001)
by
wow, that was a silly error. Thanks a lot :)
website working now, few things left to setup.
by
I suggest you to re-create the db and install q2a in a more "clean" way.
I've seen for instance that you had many plugins already copied into the plugins folder, *before* installing q2a (and I noticed some warnings in the installation process).
To avoid potential issues, you should install q2a *first*, then install the plugins *one by one* (so to be able to isolate the problems).
+1 vote
by

Based on your comment in which you pasted this error:

[15-Dec-2014 06:43:55 UTC] PHP Question2Answer MySQL query error 1146: Table 'feedsqldb.qa_options' doesn't exist - Query: (SELECT 'options' AS selectkey, title, content FROM qa_options) UNION ALL (SELECT 'time', 'db_time', UNIX_TIMESTAMP(NOW()))
 
It is still likely that you have a privilege issue after executing this
 
SHOW GRANTS FOR CURRENT_USER; reutrns GRANT ALL PRIVILEGES ON `q2adb`.* TO 'q2adbuser'@'localhost'
 
Particularly because there is a reutrns word that I'm pretty sure will break the GRANT and because you're setting the privileges to user q2adbuser for schema q2adb and your Q2A installation is configured to use schema feedsqldb, according to the error above.
 
Fix those 2 errors and try again.

 

by
SHOW GRANTS FOR CURRENT_USER;
was the query and "GRANT ALL PRIVILEGES ON `q2adb`.* TO 'q2adbuser'@'localhost' " part of the response
by
Good. So that fixes the first error. One to go...
...