I want to post a .h file from a project I'm working on. I set a simple href link to it, like:

<p>Click here to download the <a href=project_strings.h>strings file</a>.

When I click on it, though, my web browser (Iceweasel 12) gives me a prompt to download the file, instead of just displaying it:

enter image description here

Is there any magic I can add to the web page, or as a header to the file (that will still allow it to be included by a .c compiled with gcc), to get the .h file to be displayed in the web browser?


If the file is served by an HTTP server (web server), check that it is sent with the header Content-Type: text/plain (and, if needed, modify server settings to achieve that). To check the headers, use e.g. http://web-sniffer.net.

Otherwise, you could set type="text/plain" on the linking element, i.e.

<a href=project_strings.h type="text//plain">strings file</a>

though the odds are that this has no effect.

That’s pretty much what you can do as an author. The rest is up to the browser and its settings.


The problem is that your webserver doesn't know what to do with a .h file, so you need to tell it what mime-type to use.

Add the following line to your .htaccess file:

AddType text/plain h

And your browser will be able to load the file rather than downloading it.

You can also do this through httpd.conf:-

<IfModule mod_mime.c>
AddType text/plain .h

The same applies to IIS, though obviously you'd need to find out how to add the appropriate code.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy