How to maintain and extend Drupal based site? - drupal-7

I've just released a simple Drupal based site on a hosting partner.
The development was done by, first running a install script provided by my hosting partner. The script installed a default Drupal site eith a database.
After this I just logged in to my site and used admin tools to configure my site.
If that was step one,, step two will be to extend my site with one or two extra functions and improve look and feel.
My question is,,, how do I do that without interfering with my site witch now is "live"?
Are there some established methods and tools for doing this??
/regards
/lg

That depends on what you want to do and how you have your site set up so far. If you have one page that is set as frontpage, then you can make another page and test your new functions on that one. Or you could install another site, set it up in a similar way and try it there first.
There's of course loads of ways to do everything. You can start searching for "drupal deployment workflow" and go from there.

Related

Disabling website to everyone except portal administrators or host users in DotNetNuke 7?

Is it possible to disable a DNN portal, or an entire DNN installation to everyone except administrator / host users?
I need to update a DNN website and apply new themes to differant sections of the website, however this will take some time on the live website.
I'd like to achieve similar to this "Wordpress Maintenance Mode" module plugin.
I'm aware of using the APP_OFFLINE.html file to disable the entire website, however we need a couple of admins to go in and make changes whilst keeping everyone else off the website.
There isn't a maintenance mode in DNN. What I would do is the following.
Setup a new website in IIS, beta.mywebsite.com. Have that website point to your Existing DNN folder.
Point your current website to a new folder with the App_Offline.htm file/message in place. Then have your admins go to the beta.mywebsite.com URL instead of going to the www version of the URL.
That would probably be the most straightforward way to do this for DNN without writing a custom maintenance mode module for DNN.

Understanding DNN on existing website

I started working on an existing website that uses DNN. I am having difficulty understanding and accessing DNN in their staging/test environment. In IIS there are a few different websites. How can I figure out how to get to the main Admin DNN screen by looking at the information in IIS and exploring to files. Once there I need to apply new licenses for DNN.
Thanks in advance for any assistance.
In IIS, right click on the website and choose the Manage Bindings option, that will show you the various Host Names (URLS) that are configured.
Try those URLs, and then put ?CTL=login on the end of the URL to get DNN to load the login control. From there you can login with a HOST or ADMIN account, HOST/SuperUser account would be best, as you can then go to the Host/Portals (Site Management?) page and see how many different "sites" are configured within the DNN installation.

DNN / WebMatrix / Localhost / Multiple Sites

It seems that DNN is undergoing an upgrade and I cannot access the forums or many of the docs. Needing an answer soon, and Google providing too many varied types of hits (none of which are helpful or most of which post to the DNN site that is undergoing that upgrade), I had a few questions about setting up DNN.
First, I am coming from Orchard. There I was able to use Webmatrix - I downloaded the web version, opened as administrator, created modules, messed with themes, etc. Using the Orchard Docs, I was able to set up a multi-tenant site and run it on local host (IIS express through Webmatrix) - this included modifying the host/config files to view the multi-tenant sites. I could then publish to my own server running IIS 7. On the server I set up the landlord site then bound the tenants with no problem.
Being new to DNN (and things not being readily available at the moment on their site), I was hoping I could get some guidance on how to set up DNN similar to what I did with Orchard.
First question is obviously whether or not that is possible (i.e., no IIS, only IIS Express (Webmatrix) on my local machine).
Here would be my other questions:
If I can run it locally, can I just download the 7.1.0 new install package, and open Webmatrix (as Admin) on the folder I unzipped it in?
Assuming I just "Run" the website, I will then set up the "Landlord" instance of DNN on the following screens, correct? (i.e., where it asks for credentials and what DB setup I can use)
Can I then go ahead and create sub-tenant sites (alias/portal)? If so, do I go about manually updating my host/config files to run those tenants (depending on the port)?
Assume all of the above is correct, do I have to "reinstall" the 7.1.0 package on my webserver, or will a simple publish from Webmatrix do (with the proper credentials in Settings)? If so, I can handle pointing to the landlord on my server and then binding my subtenants in IIS.
Sorry for the n00b questions. Thanks!
On the Download page on dnnsoftware.com, there's a link to click which will start the install process within WebMatrix: http://www.microsoft.com/web/gallery/install.aspx?appsxml=www.microsoft.com%2fweb%2fwebpi%2f2.0%2fWebApplicationList.xml&appid=106
When you create a new portal, you can specify that it uses a URL which is a subdirectory of the current URL (i.e. a child portal alias), so that you don't have to use different ports. I'm not especially familiar with IIS Express, so I would expect that you could point multiple ports to the site, and map those as different portal aliases, but not sure exactly how you could do that, if you don't want to make use of child portal aliases.
To publish a site, you should just need to push the file system and database, and setup IIS.

Adding application alias after manual HRD migration (appengine)

I am migrating my app to HRD manually (I know there is a the tool for that).
At the end of the migration process I need to route all the domains that are connected to the old app-id to the new app-id (I don't want to redirect).
I know this is done automatically at the end of the migration (when using google's tool)
I want to make an alias myself (manually)
I think there used to be an option in the application settings panel but I can't find it now.
Is there a way to add an application alias?
Thanks
The only way I found is to contact google support.
They are the only ones who can do it...

Web Analytics & Stats

We want to add tracking statistics to a web application we are building but are pretty unsure of how to go about it. (i.e. clicks, pageviews, unique visits etc)
Does anyone have any articles on the best way to go about incorporating tracking data into an application ? i.e. javascript tracking or IIS etc ?
We want to add tracking in as a ASP.NET MVC module - but we are unsure as to the best way to actually get the data and essentially 'track' this information ?
If anyone could help out - much appreciated.
Edit: just to be clear, we want to do this in-house and present the stats to our users as an additional fee module?
You can turn on the logging for IIS and then use the SQL Server Report Server Pack for IIS. It comes with many canned reports for your sites stats and then you could take it from there with your own custom reports.
You could also just use log parser to get the stats into a SQL Server DB and then you could use SQL from their to analyse and roll your own app.
Either way, you could modularize this and sell it as an add-on to your customer base.
You could use Piwik, you just need PHP version 5.1.3 or greater and MySQL version 4.1 or greater. As they say in their website, "Piwik aims to be an open source alternative to Google Analytics."
They have a demo on the official website so you can see if it's what you're looking for.
Google analytics is a popular service. You just insert a bit of javascript on every page that contains your sites name and Google tracks the data and provides all the report on a handy web based dashboard.
It's not an ASP.net MVC module like what you mentioned, but it will certain track stats for you and will be a lot simpler to set up than trying to code or integrate anything yourselves.
I'd look at analytics to begin with and only branch out to something more complex if it doesn't meet your requirements.
klabranche provided a holistic answer in terms of using logs of web server. I think using web server log is a a great way to analyse data of your web application.
That being said, depend on your web application and the scope of your analytics, just relay on web server log is not a good way to.
As you may know, web log does not record users behaviors like clicking certain tabs which may not trigger a web server request. Obviously your web log has no idea whether users clicked that tab or not, this may hurt your analyse.
Another you need to know is browser cache, this may create another black hole in your data.
RECAP
If you want to do a holistic analytics, you need to use two approaches, one is JavaScrip tag, another one is web log. Since both of them have shortages, combining them together will give you a complete picture.
Hope this helps

Resources