Skip to content

Commit 5cb1a78

Browse files
committed
update
1 parent f12c8c2 commit 5cb1a78

8 files changed

Lines changed: 296 additions & 0 deletions

en/01_Info/01_Administration/20_Friendly_URL_Solutions.md

Lines changed: 66 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<p>This tutorial is based on a typical scenario, which is developing locally (XAMPP on Win XP Pro) and deploying on a typical remote (LAMP-Linux Apache MySQL PHP) server environment.</p>
2+
<p>The same steps will work for any source server with little or no modification, unless to the .htaccess file or the method of accessing your database.</p>
3+
<ol>
4+
<li>
5+
<p>Install the site locally, renaming and editing the .htaccess file to indicate the subdirectory you are deploying your site into in the test environment, as in the following example with a local development copy of the Evo CMS site at /localhost/sitecms/:</p>
6+
<div><div id="highlighter_716192" class="syntaxhighlighter php"><div class="toolbar"><span><a href="#" class="toolbar_item command_help help">?</a></span></div><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div><div class="line number2 index1 alt1">2</div><div class="line number3 index2 alt2">3</div><div class="line number4 index3 alt1">4</div><div class="line number5 index4 alt2">5</div><div class="line number6 index5 alt1">6</div><div class="line number7 index6 alt2">7</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2"><code class="php plain">RewriteEngine On</code></div><div class="line number2 index1 alt1"><code class="php plain">RewriteCond %{REQUEST_FILENAME} !-f</code></div><div class="line number3 index2 alt2"><code class="php plain">RewriteCond %{REQUEST_FILENAME} !-d</code></div><div class="line number4 index3 alt1"><code class="php plain"># If your Evo installation is in a subdirectory, change the following line to</code></div><div class="line number5 index4 alt2"><code class="php plain"># match the physical path to the </code><code class="php string">"root"</code> <code class="php plain">of the site </code><code class="php keyword">as</code> <code class="php plain">follows:</code></div><div class="line number6 index5 alt1"><code class="php plain"># RewriteRule ^(.*)$ /path/to/subdirectory/index.php?q=</code><code class="php variable">$1</code> <code class="php plain">[L,QSA]</code></div><div class="line number7 index6 alt2"><code class="php plain">RewriteRule ^(.*)$ /Evo/index.php?q=</code><code class="php variable">$1</code> <code class="php plain">[L,QSA]</code></div></div></td></tr></tbody></table></div></div>
7+
<p>Rename the ht.access file in the /manager folder to .htaccess. This will turn off the RewriteEngine for that folder.</p>
8+
</li>
9+
<li>
10+
<p>After developing the site locally (using all relative paths from the site root, to keep it portable), make a copy of .htaccess and call it .htaccess.local, editing the path on the .htaccess file for the remote deployment location as appropriate (usually removing the subdirectory path). The .htaccess file in /manager should be left as it is.</p>
11+
</li>
12+
<li>
13+
<p>Then make a copy of manager/includes/config.inc.php as config.local.inc.php, and edit config.inc.php with the remote database connection settings for the deployment server (the remote db must be already created and ready to use)</p>
14+
</li>
15+
<li>
16+
<p>Copy the /manager, /assets, /index.php, and /.htaccess folders and files to the target LAMP server (you can optionally exclude *.local.*). If this is an upgrade and not a new installation, make sure to save your remote site's /assets folder first, then you can re-upload all of your existing content, such as images and templates, if the upload has overwritten any of it.</p>
17+
</li>
18+
<li>
19+
<p>Unless you are in an environment where the webserver runs as the same username with which file ownership is attributed on the target server, you will need to change permissions on the following directories/files to 777:</p>
20+
<ul>
21+
<li>/assets/cache (and all files ending with .php in this directory)</li>
22+
<li>/assets/images</li>
23+
<li>/assets/files</li>
24+
<li>/assets/flash</li>
25+
<li>/assets/media</li>
26+
</ul>
27+
</li>
28+
<li>
29+
<p>Dump (export) the local DB contents (use the Backup Manager, or any MySQL client such as phpMyAdmin). In phpMyAdmin, select SQL for the file type. Save to a file on your local machine and note the location. You will probably want to empty any log tables before backing them up, or else you'll have rows and rows of log data useless to your new server.Then go to the remote server and import the SQL dump you saved. In PhPMyAdmin, select the database and "import" the SQL file.</p>
30+
</li>
31+
<li>
32+
<p>Point your browser at "http://domain_of_your_new_site.com/manager". After logging in, go to Adminstration -&gt; System configuration and change the paths for the resource browser (Resource Path and Resource URL in System Settings -&gt; Interface &amp; Editor Settings tab) and the filemanager (File Manager Path at System Settings -&gt; Miscellaneous Settings tab)</p>
33+
</li>
34+
<li>
35+
<p>If you can't access the admin interface, you may have the wrong database settings in "manager/includes/config.inc.php". Try correcting them on the local machine and uploading the file again. If you still can't access the admin interface, try going to "http://domain_of_your_site.com/install" and doing a "custom install". There you can try different database settings and test them until you get a connection. As long as you haven't hacked any of the Evo code on the local machine, you can finish the install. Alternately, you can put the correct settings (now that you know them) in "manager/includes/config.inc.php" and upload it.</p>
36+
</li>
37+
<li>
38+
<p>Test the remote site. It should be working just the same as your local development site.</p>
39+
</li>
40+
<li>
41+
<p>If things still aren't right, try doing an upgrade install on the new site.</p>
42+
</li>
43+
</ol>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<p>You may occasionally want to take your site down for maintenance to perform server upgrades or update areas of your site such as templates or third party components and etc. The task of taking your site down or placing it into maintenance mode is simple in Evo.</p>
2+
<p>To take your site down for maintenance:</p>
3+
<ol>
4+
<li>Open the Evo Admin Interface.</li>
5+
<li>Select the "Tools" tab and then choose "Configuration" from the available menu options.</li>
6+
<li>When the Configuration page has loaded, choose the "Site" tab on the page.</li>
7+
<li>Scroll down to the setting entitled "Site Status" and choose the "Offline" option.</li>
8+
<li>Click the "Save" button.</li>
9+
</ol>
10+
<p>At this point, your site is now offline and visitors will see the Site Unavailable page - see below for information on how to set this page up. You can easily make the site online again by following the options above but selecting "Online" in step 4.</p>
11+
<h3>Setting a Site Unavailable page</h3>
12+
<p>To set your Site Unavailable page, follow these steps:</p>
13+
<ol>
14+
<li>If you haven't already, create a Evo document that contains the information that you want site visitors to see when the site is offline. When creating this page, set the "Hide in Menu" option to Yes and make sure the page is published.</li>
15+
<li>Open the Evo Admin Interface.</li>
16+
<li>Select the "Tools" tab and then choose "Configuration" from the available menu options.</li>
17+
<li>When the Configuration page has loaded, choose the "Site" tab on the page.</li>
18+
<li>Scroll down to the setting entitled "Site Unavailable Page" and enter the ID number of your page in the textbox.</li>
19+
<li>Click the "Save" button.</li>
20+
</ol>
21+
<p>Your Site Unavailable page is now setup, ready for action!</p>
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
<p>To upgrade Evo you follow almost exactly the same steps as in the Installation Guide. With one big exception. You <em>do not erase or overwrite the config.inc.php</em> file on your server. Here are the steps:</p>
2+
<ol>
3+
<li>
4+
<p>If you have modified any of the default snippets or plugins, either rename them in the resource manager or be sure to uncheck them when you get to the step in the installation wizard which asks you which snippets and plugins to install. The upgrade process overwrites all the default snippets to ensure you have the latest versions. (If you modify any of the core distribution snippets, it is recommended you save them with a new name to prevent this from happening.)</p>
5+
</li>
6+
<li>
7+
<p>Backup everything. Download all your files with your FTP client to your hard drive. Use phpMyAdmin or whatever database utility you have to "dump" your entire database to your hard drive.</p>
8+
</li>
9+
<li>
10+
<p>Make sure everything is backed up! No kidding!</p>
11+
</li>
12+
<li>
13+
<p>Download and unzip the newer version of Evo.</p>
14+
</li>
15+
<li>
16+
<p>Upload the contents of the extracted folder to your server. Simply overwrite all the old files. The Evo archive should not contain the config.inc.php file in /manager/includes/ directory, so it won't be overwritten. But it's still good to check before uploading that it's not there, and that you have a backup of your current config.inc.php. (Did you remember to backup the files before doing this?)</p>
17+
</li>
18+
<li>
19+
<p>Now fire up your web browser and load the index.php file found in the /install/ directory.</p>
20+
</li>
21+
<li>
22+
<p>Follow the online steps. This time, right after you accept the license agreement, be sure to select the <strong><em>Upgrade</em></strong> <strong>radio button</strong>.</p>
23+
<div class="info">NOTE: If your MySQL version is older than 4.1, select the Advanced Upgrade and use cp1251_koi8 as the Connection character set because the the only allowable value for charset_name is cp1251_koi8 before MySQL 4.1. It is possible to add new character set mappings by editing the sql/convert.cc file in the MySQL source distribution though, so you might be possible to use other charsets too.</div>
24+
</li>
25+
<li>
26+
<p>If you deleted your old files instead of overwriting them, you may have to CHMOD the files and folders that are described in the <a href="documentation/getting-started/basic-installation">Installation Guide</a> to make them writable by the server, but the upgrade wizard will tell you if you need to.</p>
27+
</li>
28+
<li>
29+
<p>Remember to uncheck any resources in the installation what you have modified yourself, if you have not changed their names.</p>
30+
</li>
31+
<li>
32+
<p>Once you get to a screen that has a checkbox offering to remove install directory, make sure it's checked (This prevents people from running the installation/upgrading process again and doing a hostile take over of your site).</p>
33+
</li>
34+
<li>
35+
<p>After the you have finished the upgrading wizard, go back to your FTP program and make sure that the "/install/" folder is deleted. If it's not, delete it manually.</p>
36+
</li>
37+
<li>
38+
<p>Finally, change the permissions of your <strong>config.inc.php</strong> file in "/manager/includes" folder back to read only. If you had written it down before, use that same CHMOD setting now, or try setting to "444". This is <em>really important</em>, and will help to prevent your site from being hacked.</p>
39+
</li>
40+
<li>
41+
<p>Finish the upgrading wizard.</p>
42+
</li>
43+
<li>
44+
<p>Once things are up and running again go to Evo admin interface and clean up your plugin and snippet names if you changed anything in step 1.</p>
45+
</li>
46+
<li>
47+
<p>That's it, you're done. You've just upgraded Evo.</p>
48+
</li>
49+
</ol>
50+
<h3>Alternate Method</h3>
51+
<p>Uploading a new version of Evo over the top of an old one will leave you with old files that are no longer used. Evo team members each have different ways that they like to upgrade, but here's a method that will have the least downtime:</p>
52+
<ol>
53+
<li>
54+
<p>Download everything from your site.</p>
55+
</li>
56+
<li>
57+
<p>Make a copy of your database.</p>
58+
</li>
59+
<li>
60+
<p>Basically, make sure you have all the old files backed up so that you can restore the old version if you need to.</p>
61+
</li>
62+
<li>
63+
<p>Create a new <strong>local</strong> directory called EvoNew (or whatever you prefer).</p>
64+
</li>
65+
<li>
66+
<p>Extract the new Evo files to that directory.</p>
67+
</li>
68+
<li>
69+
<p>From your backup, *copy* the config.inc.php file to manager/includes</p>
70+
</li>
71+
<li>
72+
<p>Copy any snippets, modules, plugins, etc., that you need or have modified into the appropriate parts of EvoNew.</p>
73+
</li>
74+
<li>
75+
<p>Copy any images, css, template files, documents, etc., into the appropriate parts of EvoNew.</p>
76+
</li>
77+
<li>
78+
<p>Rename the new folders/files to "index.php-new", "manager-new", "assets-new". Don't rename "install". Upload these folders (including the "install" folder) and the "index.php-new" file. This takes a while.</p>
79+
</li>
80+
<li>
81+
<p>Switch the names of the existing folders/files to "index.php-old", "manager-old", "assets-old".</p>
82+
</li>
83+
<li>
84+
<p>From this point, your site is not working.</p>
85+
</li>
86+
<li>
87+
<p>Change the names of the newfolders/files to "index.php", "manager", "assets".</p>
88+
</li>
89+
<li>
90+
<p>Run yoursite.com/install in your browser, being sure to select Upgrade. See <a href="documentation/getting-started/basic-installation">Installation Guide</a> for more information.</p>
91+
<div class="info">NOTE:If your MySQL version is older than 4.1, select the Advanced Upgrade and usecp1251_koi8 as the Connection character set because the the only allowable value for charset_name is cp1251_koi8 before MySQL 4.1. It is possible to add new character set mappings by editing the sql/convert.cc file in the MySQL source distribution though, so you might be possible to use other charsets too.</div>
92+
</li>
93+
<li>
94+
<p>From this point, your site should be working again. If it isn't, switch the folder names back!</p>
95+
</li>
96+
<li>
97+
<p>You should then be able to delete all the -old directories.</p>
98+
</li>
99+
<li>
100+
<p>You should also, as a result, have a local backup of the old site, and a local backup of the new site.</p>
101+
</li>
102+
</ol>
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<h2>Before You Begin</h2>
2+
<p>Make sure that "Use access permissions" is set to Yes in the User tab of Tools -&gt; Configuration.</p>
3+
<h3>Adding the User</h3>
4+
<p>To add the web user, follow these steps:</p>
5+
<ol>
6+
<li>
7+
<p>Log in to the Evo Admin Interface.</p>
8+
</li>
9+
<li>
10+
<p>Next, Click the "New web user" link.</p>
11+
</li>
12+
<li>
13+
<p>Fill out the necessary information in the fields provided. Username, Password, Full name and E-mail address are required fields.</p>
14+
<div class="info"><strong>Note:</strong> Passwords are not stored in plain text form, so make sure you take note of the password if you do not have it emailed to the new user!</div>
15+
</li>
16+
<li>
17+
<p>You can also set a login home page in the "User Settings" tab and enter the document ID (the document ID can easily be seen in the Document Tree panel to the right) in the field provided.</p>
18+
</li>
19+
<li>
20+
<p>Finally, select the user group(s) to which you want the user to be assigned.</p>
21+
</li>
22+
<li>
23+
<p>Click the Save button to save the user.</p>
24+
</li>
25+
</ol>
26+
<p>Now that we've successfully created our web user account and have assigned the user to a web user group, we can secure documents by assigning them to a corresponding document group.</p>
27+
<h3>Setting up the login snippet</h3>
28+
<p>In order for the web users to be able to access your secure pages you must provide them with a login screen. To do this you can use the [[WebLogin]] Snippet. See the WebLogin snippet for more information.</p>
29+
<div class="info"><strong>Note:</strong> Pages with cache enabled will cache new menu items when a web user logs in. It's best to either not cache your restricted pages or use non-cacheable menu snippet tags ([!…!]).</div>
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<h2>Before You Begin</h2>
2+
<p>Make sure that "Use access permissions" is set to Yes in the User Settings tab of System Configuration.</p>
3+
<h3>Creating the Groups</h3>
4+
<p>To create the web user and document groups, follow these steps:</p>
5+
<ol>
6+
<li>
7+
<p>Log in to the Evo Admin Interface.</p>
8+
</li>
9+
<li>
10+
<p>From the "Security" menu select "Web Permissions".</p>
11+
</li>
12+
<li>
13+
<p>On "Web User groups" tab, enter the name of the group then click the submit button.</p>
14+
</li>
15+
<li>
16+
<p>To create a Document Group, click on the "Document groups" tab. Similar to the web group, you must enter the name of the document group then click the submit button. The page will then refresh showing the new document group.</p>
17+
</li>
18+
<li>
19+
<p>Now that we have created a web user and document group we now need to link the two together. To do this, click on the "User / Document group links" tab. Click on the "Add Group" button to assign the document group to the web user group.</p>
20+
</li>
21+
</ol>
22+
<p>You can use the "Remove button" to later remove the group.</p>
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<p>The primary reason for setting up web users and groups is to be able to secure access to selected pages on the web. Users on the web are stored separately and apart from admin (back-end) users for security reasons. A web user cannot log into the back-end nor can a back-end user log into the web site (front-end). You would have to use separate accounts to do this. Here's how it works:</p>
2+
<p>Back-end users are assigned to back-end user groups:</p>
3+
<p><img src="assets/images/docs/y_users_1.gif" alt=""></p>
4+
<p>Web users are assigned to web groups:</p>
5+
<p><img src="assets/images/docs/y_users_2.gif" alt=""></p>
6+
<p>Both "Back-end User Groups" and "Web User Groups" can be assigned to the same "Document Group".</p>
7+
<p><img src="assets/images/docs/y_users_3.gif" alt=""></p>
8+
<h2 id="WhyWebUsersandGroups-AnExample">An Example</h2>
9+
<p>From the Web (Front-end):</p>
10+
<p><img src="assets/images/docs/y_users_4.gif" alt=""></p>
11+
<p>From the Admin (Back-end):</p>
12+
<p><img src="assets/images/docs/y_users_5.gif" alt=""></p>
13+
<div class="info"><strong>Note:</strong> A document is flagged as private whenever the document group that it belongs to is assigned or is linked to a user group. In other words if the document is assigned to a document group that is not yet linked to a user group then that document will be made public. Documents that are private to the admin users will not be private to web users if the document group is not assigned to a web user group and vice versa.</div>

en/01_Info/01_Administration/60_Web_Users/index.md

Whitespace-only changes.

0 commit comments

Comments
 (0)