Edit History Actions Discussion

Diff for "Info/Webhosting"

Differences between revisions 11 and 12
Revision 11 as of 2009-07-07 21:12:53
Size: 3405
Editor: marco
Comment: rephrasing, spelling, styling
Revision 12 as of 2009-07-07 21:15:54
Size: 3405
Editor: marco
Comment: one more capitalization
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
You can use apache `.htaccess`-files to customize the behaviour of your webpage. [[http://httpd.apache.org/docs/2.0/howto/htaccess.html|Apache documentation on htaccess]]. You can use Apache `.htaccess`-files to customize the behaviour of your webpage. [[http://httpd.apache.org/docs/2.0/howto/htaccess.html|Apache documentation on htaccess]].

Webhosting

You can host your personal webpage or files at Blinkenshell.org. To do this, put any files you want to be accessible via HTTP in the directory public_html in your home directory.

If you have a file named index.html or index.php, that file will be used as the index page when someone browses to your site without requesting a specific file (i.e. http://user.blinkenshell.org/). If you do not have an index file a directory listing of all the files in your public_html will be shown instead.

You can use Apache .htaccess-files to customize the behaviour of your webpage. Apache documentation on htaccess.

You can use PHP for your webpage. PHP is configured with su_php which will make all scripts execute as your user permissions instead of the Apache user. Also, suhosin is enabled to further increase security. For security reasons, all your .php files must not be writable by "group" or "others". (Group or Others doesn't even need read permissions, so chmod 600 is fine for .php files. Static content will need read permission by Others however, chmod 644 for example.)

CGI is enabled in ~/public_html/cgi-bin and executed with suexec. Again, permissions are important here. The script has to be executable by your user, and it must not be writable by "group" or "others".

The URL to your webpage is http://username.blinkenshell.org/ (http://titan.blinkenshell.org/~username/ and http://blinkenshell.org/titan/~username/ also works. The last one is the most real, the others are done with mod_rewrite magic.)

Proxy

All requests to your webpage are handled by Apache on the shell server. However, the requests are proxied by a Reverse Proxy on the way. This might cause some problems, especially with PHP or CGI scripts that don't take this into account.

A common failure is not properly figuring out what URL to redirect after submitting a form. This is because there is no way for the script to know what URL the user should enter to access the script, since it's being rewritten by the proxying server. This is often solved by specifying a "base URL" or "absolute URL" or something similar in the script configuration file and forcing that to be used instead of trying to figure out the URL on its own.

Also, if you want to get the IP of a visitor you cannot use the normal way since you will only get the IP of the forwarding proxy. You should instead use the data available in the X-Forwarded-For request header (More about X-headers in Apache's Documentation.) This data is available in the variable $_SERVER['HTTP_X_FORWARDED_FOR'] in PHP (this variable may contain multiple IPs.)

MySQL

For information on how to use MySQL, see: Info/MySQL. Remember to connect to host 192.168.0.1 and not localhost.


CategoryInfo