<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.24pin.tech/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tgriego</id>
	<title>24PinTech Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.24pin.tech/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tgriego"/>
	<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/view/Special:Contributions/Tgriego"/>
	<updated>2026-05-08T13:17:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Nginx&amp;diff=1121</id>
		<title>Nginx</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Nginx&amp;diff=1121"/>
		<updated>2021-03-08T21:44:41Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: /* Adding HTTPS to a domain with LetsEncrypt (certbot) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==About==&lt;br /&gt;
Nginx (pronounced engine-x) is web server which can also be used  proxy, load balancer, mail proxy and HTTP cache. It's also a modern alternative to something like Apache, IIS, or Caddy.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
An nginx installation should be pretty accessible regardless of your OS. This guide is specifically written for Ubuntu Server 18.04 LTS, but should work on any other type of Unix operating system. The setup that we're using is commonly referred to as a LEMP stack (Linux, nginx, MySQL, PHP.)&lt;br /&gt;
&lt;br /&gt;
*nginx/1.14.0 (Ubuntu)&lt;br /&gt;
*PHP 7.2.10-0ubuntu0.18.04.1 (cli)&lt;br /&gt;
*MySQL v14.14 Distribution 5.7.24&lt;br /&gt;
&lt;br /&gt;
If you've just installed a new operating system, you'll want to update your local package index by running &amp;lt;code&amp;gt;sudo apt-get update&amp;lt;/code&amp;gt;, and then add the Universe repository by running &amp;lt;code&amp;gt;sudo apt-add-repository universe&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Installing nginx==&lt;br /&gt;
To start, you're going to want to install nginx using the aptitude package manager. You can do this by running &amp;lt;code&amp;gt;sudo apt-get install nginx&amp;lt;/code&amp;gt;. Once you run that, you'll want to go through the configuration prompt that appears.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
After nginx and its subsequent dependencies have finished installing, you'll want to let it through the firewall by running &amp;lt;code&amp;gt;sudo ufw allow 'Nginx HTTP'&amp;lt;/code&amp;gt;. Check what your current IP is by running &amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt;, and then look for whatever interface looks correct. In this instance, the proper interface is &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
[[File:Ifconfig-example.png|left|frame|an example of the results from ifconfig]]&lt;br /&gt;
After running the command, the first indented line should say '''''inet''''' and then an IP address afterwards. Verify functionality of nginx by going to your web browser and typing &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://{ip}/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; where &amp;lt;code&amp;gt;{ip}&amp;lt;/code&amp;gt; is what follows after '''''inet'''''.&lt;br /&gt;
&lt;br /&gt;
If the default nginx page displays, continue to the next section.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Installing MySQL==&lt;br /&gt;
The process of installing MySQL is fairly similar to installing nginx, although MySQL does require a little bit of configuration before it will function properly. Start off by running &amp;lt;code&amp;gt;sudo apt-get install mysql-server&amp;lt;/code&amp;gt;, and then once it finishes run the setup script by typing &amp;lt;code&amp;gt;sudo mysql_secure_installation&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
The first thing that the installations script will ask you is if you'd like to enable the &amp;lt;code&amp;gt;VALIDATE PASSWORD PLUGIN&amp;lt;/code&amp;gt;, but don't. If you don't care about why, then skip to the next paragraph, but if you do, keep reading. Essentially, the plugin throws errors if passwords don't meet specific criteria. This causes issues if you either a.) use weak passwords, or b.) install a package that automatically compiles and creates a default account with basic credentials. '''It is always good practice to use strong passwords for everything, and database credentials are no exception.'''&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Say yes to the rest of the questions and use good judgement if it asks something that requires anything other than a Y/N input.&lt;br /&gt;
&lt;br /&gt;
==Installing PHP==&lt;br /&gt;
Again, installing PHP is very similar to two sections preceding this one. Start off by installing the &amp;lt;code&amp;gt;php-fpm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;php-mysql&amp;lt;/code&amp;gt; packages by running &amp;lt;code&amp;gt;sudo apt-get install php-fpm php-mysql&amp;lt;/code&amp;gt;. After it installs, you'll want to edit &amp;lt;code&amp;gt;php.ini&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo vim /etc/php/7.2/fpm/php.ini&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
'''''Note:''' If the file isn't found, check'' the directory path by using the &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; command and seeing where something doesn't exist.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If you're using Vim, type a &amp;lt;code&amp;gt;?&amp;lt;/code&amp;gt; and search for &amp;lt;code&amp;gt;cgi.fix_pathinfo&amp;lt;/code&amp;gt;. You should be taken to a line that's commented out and says &amp;lt;code&amp;gt;;cgi.fix_pathinfo=0&amp;lt;/code&amp;gt; or something similar. Press the &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; key to start editing and remove the &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt; to uncomment it. If the variable is set to 1, change it to 0. Press the &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; key and type &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt; to save and quit your changes. If you didn't run Vim as a superuser (if you didn't run the command with &amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt;), it will throw and error and the file won't save.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once the file saves, run &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt; to restart PHP.&lt;br /&gt;
&lt;br /&gt;
==Configuring nginx==&lt;br /&gt;
The configuration for nginx is a little different compared to anything you might be used to. To start, there are two directories: &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sites-enabled&amp;lt;/code&amp;gt;. The former directory actually contains the configuration files, while the latter contains symbolic links to the configuration files and enables them.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
To start, lets say that we wanted to configure our nginx server to work with the domain &amp;lt;code&amp;gt;example.ms&amp;lt;/code&amp;gt;. First, we'd want to verify that the directory &amp;lt;code&amp;gt;/var/www/example.ms&amp;lt;/code&amp;gt; exists. Move to the &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; directory by entering the command &amp;lt;code&amp;gt;cd /etc/nginx/sites-available&amp;lt;/code&amp;gt;. Next, you'll want to create a new configuration file with the name of the domain. You can either by running &amp;lt;code&amp;gt;sudo touch example.ms &amp;amp;&amp;amp; sudo vim example.ms&amp;lt;/code&amp;gt; or simply by running &amp;lt;code&amp;gt;sudo vim example.ms&amp;lt;/code&amp;gt; since Vim creates the file if it doesn't exist. Again, press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to edit the file. Once you're in edit mode, you'll want the contents to look something like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
server {&lt;br /&gt;
     listen 80;&lt;br /&gt;
     listen [::]:80;&lt;br /&gt;
&lt;br /&gt;
     # this is a comment! you don't have to include this, but if you're not&lt;br /&gt;
     # going to be using a domain, then you can replace it with an IP&lt;br /&gt;
     server_name example.ms;&lt;br /&gt;
&lt;br /&gt;
     root /var/www/example.ms;&lt;br /&gt;
     index index.php index.html index.htm;&lt;br /&gt;
&lt;br /&gt;
     location = /favicon.io {&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
          access_log off;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location = /robots.txt {&lt;br /&gt;
          allow all;&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
          access_log off;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location / {&lt;br /&gt;
          try_files $uri $uri/ /index.php$args;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location ~ \.php$ {&lt;br /&gt;
          include snippets/fastcgi-php.conf;&lt;br /&gt;
          fastcgi_intercept_errors on;&lt;br /&gt;
          fastcgi_pass unix:/run/php/php7.2-fpm.sock;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {&lt;br /&gt;
          expires max;&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;'''''Tip:''' You can periodically save your configuration file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt;, typing &amp;lt;code&amp;gt;:w&amp;lt;/code&amp;gt; , and then pressing &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; again to edit the file.''&lt;br /&gt;
&lt;br /&gt;
'''''Tip''''': If you are adding another domain the &amp;lt;code&amp;gt;listen 80;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;listen [::]:80;&amp;lt;/code&amp;gt; isn't needed and you can go from &amp;lt;code&amp;gt;server {&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;server_name example.ms;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''.''&lt;br /&gt;
&lt;br /&gt;
Once you're completely done editing, save and quit the file by pressing the escape key and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Finally, you can check your configuration file for errors by running &amp;lt;code&amp;gt;sudo nginx -t&amp;lt;/code&amp;gt;. If there are any errors, refer back to your configuration file and see where you went wrong. In the event that nginx threw an error, review your configuration file and look for any missing &amp;lt;code&amp;gt;{&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;}&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt;. Every line that doesn't have curly brackets should end in a semicolon, which is probably the issue. If that isn't, then refer to your favorite search engine and start researching.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If nothing went wrong, and your configuration file is completely free of errors, run &amp;lt;code&amp;gt;cd ../sites-enabled&amp;lt;/code&amp;gt; to move to the sites-enabled directory. Finally, to enable your website, run &amp;lt;code&amp;gt;sudo ln -s /etc/nginx/sites-available/example.ms ./&amp;lt;/code&amp;gt; to create the symbolic link to your configuration file, and then run &amp;lt;code&amp;gt;sudo systemctl restart nginx&amp;lt;/code&amp;gt; to restart nginx and make your changes go live.&lt;br /&gt;
&lt;br /&gt;
==Verifying Functionality==&lt;br /&gt;
Of course, you'll want to make sure that everything you just did actually works. Run &amp;lt;code&amp;gt;cd /var/www/example.ms &amp;amp;&amp;amp; sudo vim info.php&amp;lt;/code&amp;gt; to move to your websites home directory and create the file &amp;lt;code&amp;gt;info.php&amp;lt;/code&amp;gt;. Inside of the file, type the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
     phpinfo();&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;... and then save and quit the file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Now, go to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://example.ms/info.php&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. If you didn't configure the nameservers for your domain to point to your new nginx server, then just replace the domain name with the IP of the server (refer to the &amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt; part of the [[Nginx#Installing nginx|Installing nginx]] section if you don't know how.)&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If everything worked properly, you should see a PHP information page with a bunch of library authors and enabled modules. If it doesn't, research!&lt;br /&gt;
&lt;br /&gt;
==Subdomains==&lt;br /&gt;
Adding subdomains is really easy and doesn't require a lot of effort. You'll just need to remember the general process from the [[Nginx#Configuring nginx|Configuring nginx]] section.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
To start, navigate to the &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; directory by running  &amp;lt;code&amp;gt;cd /etc/nginx/sites-available&amp;lt;/code&amp;gt;. Then, you can either copy a pre-existing configuration by running &amp;lt;code&amp;gt;sudo cp example.ms subdomain.example.ms&amp;lt;/code&amp;gt; or creating a new file by running &amp;lt;code&amp;gt;sudo vim subdomain.example.ms&amp;lt;/code&amp;gt;. If you copied it, edit the file by running &amp;lt;code&amp;gt;sudo vim subdomain.example.ms&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===What needs to be changed===&lt;br /&gt;
The only important things that need to be changed are the &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; variables. Press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to start editing the file in Vim, and then find where the variables are located. Change the &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; variable to an updated path where the contents for the subdomain can be found. Generally, good practice for this is to create a new folder in the primary domains path with the name of the subdomain. So, if we were trying to create &amp;lt;code&amp;gt;subdomain.example.ms&amp;lt;/code&amp;gt;, we'd create a new folder by running the command  &amp;lt;code&amp;gt;sudo mkdir /var/www/example.ms/subdomain&amp;lt;/code&amp;gt;. Then, we'd modify our &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; variable to look something like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
# before&lt;br /&gt;
root /var/www/example.ms;&lt;br /&gt;
&lt;br /&gt;
# after&lt;br /&gt;
root /var/www/example.ms/subdomain;&lt;br /&gt;
&amp;lt;/pre&amp;gt;The &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; variable is just as simple. Just add the subdomain prefix to the beginning of your domain:&lt;br /&gt;
 # before&lt;br /&gt;
 server_name example.ms;&lt;br /&gt;
 &lt;br /&gt;
 # after&lt;br /&gt;
 server_name subdomain.example.ms;&lt;br /&gt;
Once you've made the proper changes, save and quit the file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Then, run &amp;lt;code&amp;gt;cd ../sites-enabled &amp;amp;&amp;amp; sudo ln -s /etc/nginx/sites-available/subdomain.example.ms ./&amp;lt;/code&amp;gt; and restart nginx by running &amp;lt;code&amp;gt;sudo systemctl restart nginx&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Adding other domains (that aren't subdomains)==&lt;br /&gt;
The process is exactly the same as adding a subdomain, except instead of adding a prefix the value of &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; you'll just completely change the domain. Again, don't forget to create the symbolic link to the configuration file and ''especially'' don't forget to restart nginx after saving the config/creating the symbolic link. When you're creating the folder to contain the contents for the server, create a new folder that has the name of the domain. So, for instance, if I was creating example2.ms, I'd run &amp;lt;code&amp;gt;sudo mkdir /var/www/example2.ms&amp;lt;/code&amp;gt;. Now that the domain is ready go to [http://wiki.24pin.tech/index.php?title=WordPress WordPress]if you are planning on using WordPress as your editor.&lt;br /&gt;
&lt;br /&gt;
==Adding HTTPS to a domain with LetsEncrypt (certbot)==&lt;br /&gt;
If you're adding a new domain to Nginx and want to enable https on a new domain, run &amp;lt;code&amp;gt;sudo certbot --nginx -d domain.com&amp;lt;/code&amp;gt; where &amp;lt;code&amp;gt;domain.com&amp;lt;/code&amp;gt;  is the domain that you want to add. Once you've done this, check the domain and look for a lock icon in the url bar of your browser. In the event that you don't already have certbot installed, run the following commands:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt-get install certbot&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt-get install python-certbot-nginx&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note:''' '''It could possibly take up to 24-72 hours for it to be enabled, although at the time of writing the changes propagated almost immediately.'''&lt;br /&gt;
&lt;br /&gt;
==Conclusion==&lt;br /&gt;
By now, your nginx server should be up and fully operational. As always, if you're having any issues please STFW before you ask people for advice!&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Thank you,&lt;br /&gt;
&lt;br /&gt;
- Tyler&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Nginx&amp;diff=1120</id>
		<title>Nginx</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Nginx&amp;diff=1120"/>
		<updated>2021-03-08T21:22:38Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: finished the https section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==About==&lt;br /&gt;
Nginx (pronounced engine-x) is web server which can also be used  proxy, load balancer, mail proxy and HTTP cache. It's also a modern alternative to something like Apache, IIS, or Caddy.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
An nginx installation should be pretty accessible regardless of your OS. This guide is specifically written for Ubuntu Server 18.04 LTS, but should work on any other type of Unix operating system. The setup that we're using is commonly referred to as a LEMP stack (Linux, nginx, MySQL, PHP.)&lt;br /&gt;
&lt;br /&gt;
*nginx/1.14.0 (Ubuntu)&lt;br /&gt;
*PHP 7.2.10-0ubuntu0.18.04.1 (cli)&lt;br /&gt;
*MySQL v14.14 Distribution 5.7.24&lt;br /&gt;
&lt;br /&gt;
If you've just installed a new operating system, you'll want to update your local package index by running &amp;lt;code&amp;gt;sudo apt-get update&amp;lt;/code&amp;gt;, and then add the Universe repository by running &amp;lt;code&amp;gt;sudo apt-add-repository universe&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Installing nginx==&lt;br /&gt;
To start, you're going to want to install nginx using the aptitude package manager. You can do this by running &amp;lt;code&amp;gt;sudo apt-get install nginx&amp;lt;/code&amp;gt;. Once you run that, you'll want to go through the configuration prompt that appears.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
After nginx and its subsequent dependencies have finished installing, you'll want to let it through the firewall by running &amp;lt;code&amp;gt;sudo ufw allow 'Nginx HTTP'&amp;lt;/code&amp;gt;. Check what your current IP is by running &amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt;, and then look for whatever interface looks correct. In this instance, the proper interface is &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
[[File:Ifconfig-example.png|left|frame|an example of the results from ifconfig]]&lt;br /&gt;
After running the command, the first indented line should say '''''inet''''' and then an IP address afterwards. Verify functionality of nginx by going to your web browser and typing &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://{ip}/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; where &amp;lt;code&amp;gt;{ip}&amp;lt;/code&amp;gt; is what follows after '''''inet'''''.&lt;br /&gt;
&lt;br /&gt;
If the default nginx page displays, continue to the next section.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Installing MySQL==&lt;br /&gt;
The process of installing MySQL is fairly similar to installing nginx, although MySQL does require a little bit of configuration before it will function properly. Start off by running &amp;lt;code&amp;gt;sudo apt-get install mysql-server&amp;lt;/code&amp;gt;, and then once it finishes run the setup script by typing &amp;lt;code&amp;gt;sudo mysql_secure_installation&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
The first thing that the installations script will ask you is if you'd like to enable the &amp;lt;code&amp;gt;VALIDATE PASSWORD PLUGIN&amp;lt;/code&amp;gt;, but don't. If you don't care about why, then skip to the next paragraph, but if you do, keep reading. Essentially, the plugin throws errors if passwords don't meet specific criteria. This causes issues if you either a.) use weak passwords, or b.) install a package that automatically compiles and creates a default account with basic credentials. '''It is always good practice to use strong passwords for everything, and database credentials are no exception.'''&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Say yes to the rest of the questions and use good judgement if it asks something that requires anything other than a Y/N input.&lt;br /&gt;
&lt;br /&gt;
==Installing PHP==&lt;br /&gt;
Again, installing PHP is very similar to two sections preceding this one. Start off by installing the &amp;lt;code&amp;gt;php-fpm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;php-mysql&amp;lt;/code&amp;gt; packages by running &amp;lt;code&amp;gt;sudo apt-get install php-fpm php-mysql&amp;lt;/code&amp;gt;. After it installs, you'll want to edit &amp;lt;code&amp;gt;php.ini&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo vim /etc/php/7.2/fpm/php.ini&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
'''''Note:''' If the file isn't found, check'' the directory path by using the &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; command and seeing where something doesn't exist.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If you're using Vim, type a &amp;lt;code&amp;gt;?&amp;lt;/code&amp;gt; and search for &amp;lt;code&amp;gt;cgi.fix_pathinfo&amp;lt;/code&amp;gt;. You should be taken to a line that's commented out and says &amp;lt;code&amp;gt;;cgi.fix_pathinfo=0&amp;lt;/code&amp;gt; or something similar. Press the &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; key to start editing and remove the &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt; to uncomment it. If the variable is set to 1, change it to 0. Press the &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; key and type &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt; to save and quit your changes. If you didn't run Vim as a superuser (if you didn't run the command with &amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt;), it will throw and error and the file won't save.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once the file saves, run &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt; to restart PHP.&lt;br /&gt;
&lt;br /&gt;
==Configuring nginx==&lt;br /&gt;
The configuration for nginx is a little different compared to anything you might be used to. To start, there are two directories: &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sites-enabled&amp;lt;/code&amp;gt;. The former directory actually contains the configuration files, while the latter contains symbolic links to the configuration files and enables them.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
To start, lets say that we wanted to configure our nginx server to work with the domain &amp;lt;code&amp;gt;example.ms&amp;lt;/code&amp;gt;. First, we'd want to verify that the directory &amp;lt;code&amp;gt;/var/www/example.ms&amp;lt;/code&amp;gt; exists. Move to the &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; directory by entering the command &amp;lt;code&amp;gt;cd /etc/nginx/sites-available&amp;lt;/code&amp;gt;. Next, you'll want to create a new configuration file with the name of the domain. You can either by running &amp;lt;code&amp;gt;sudo touch example.ms &amp;amp;&amp;amp; sudo vim example.ms&amp;lt;/code&amp;gt; or simply by running &amp;lt;code&amp;gt;sudo vim example.ms&amp;lt;/code&amp;gt; since Vim creates the file if it doesn't exist. Again, press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to edit the file. Once you're in edit mode, you'll want the contents to look something like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
server {&lt;br /&gt;
     listen 80;&lt;br /&gt;
     listen [::]:80;&lt;br /&gt;
&lt;br /&gt;
     # this is a comment! you don't have to include this, but if you're not&lt;br /&gt;
     # going to be using a domain, then you can replace it with an IP&lt;br /&gt;
     server_name example.ms;&lt;br /&gt;
&lt;br /&gt;
     root /var/www/example.ms;&lt;br /&gt;
     index index.php index.html index.htm;&lt;br /&gt;
&lt;br /&gt;
     location = /favicon.io {&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
          access_log off;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location = /robots.txt {&lt;br /&gt;
          allow all;&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
          access_log off;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location / {&lt;br /&gt;
          try_files $uri $uri/ /index.php$args;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location ~ \.php$ {&lt;br /&gt;
          include snippets/fastcgi-php.conf;&lt;br /&gt;
          fastcgi_intercept_errors on;&lt;br /&gt;
          fastcgi_pass unix:/run/php/php7.2-fpm.sock;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {&lt;br /&gt;
          expires max;&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;'''''Tip:''' You can periodically save your configuration file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt;, typing &amp;lt;code&amp;gt;:w&amp;lt;/code&amp;gt; , and then pressing &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; again to edit the file.''&lt;br /&gt;
&lt;br /&gt;
'''''Tip''''': If you are adding another domain the &amp;lt;code&amp;gt;listen 80;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;listen [::]:80;&amp;lt;/code&amp;gt; isn't needed and you can go from &amp;lt;code&amp;gt;server {&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;server_name example.ms;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''.''&lt;br /&gt;
&lt;br /&gt;
Once you're completely done editing, save and quit the file by pressing the escape key and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Finally, you can check your configuration file for errors by running &amp;lt;code&amp;gt;sudo nginx -t&amp;lt;/code&amp;gt;. If there are any errors, refer back to your configuration file and see where you went wrong. In the event that nginx threw an error, review your configuration file and look for any missing &amp;lt;code&amp;gt;{&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;}&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt;. Every line that doesn't have curly brackets should end in a semicolon, which is probably the issue. If that isn't, then refer to your favorite search engine and start researching.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If nothing went wrong, and your configuration file is completely free of errors, run &amp;lt;code&amp;gt;cd ../sites-enabled&amp;lt;/code&amp;gt; to move to the sites-enabled directory. Finally, to enable your website, run &amp;lt;code&amp;gt;sudo ln -s /etc/nginx/sites-available/example.ms ./&amp;lt;/code&amp;gt; to create the symbolic link to your configuration file, and then run &amp;lt;code&amp;gt;sudo systemctl restart nginx&amp;lt;/code&amp;gt; to restart nginx and make your changes go live.&lt;br /&gt;
&lt;br /&gt;
==Verifying Functionality==&lt;br /&gt;
Of course, you'll want to make sure that everything you just did actually works. Run &amp;lt;code&amp;gt;cd /var/www/example.ms &amp;amp;&amp;amp; sudo vim info.php&amp;lt;/code&amp;gt; to move to your websites home directory and create the file &amp;lt;code&amp;gt;info.php&amp;lt;/code&amp;gt;. Inside of the file, type the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
     phpinfo();&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;... and then save and quit the file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Now, go to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://example.ms/info.php&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. If you didn't configure the nameservers for your domain to point to your new nginx server, then just replace the domain name with the IP of the server (refer to the &amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt; part of the [[Nginx#Installing nginx|Installing nginx]] section if you don't know how.)&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If everything worked properly, you should see a PHP information page with a bunch of library authors and enabled modules. If it doesn't, research!&lt;br /&gt;
&lt;br /&gt;
==Subdomains==&lt;br /&gt;
Adding subdomains is really easy and doesn't require a lot of effort. You'll just need to remember the general process from the [[Nginx#Configuring nginx|Configuring nginx]] section.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
To start, navigate to the &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; directory by running  &amp;lt;code&amp;gt;cd /etc/nginx/sites-available&amp;lt;/code&amp;gt;. Then, you can either copy a pre-existing configuration by running &amp;lt;code&amp;gt;sudo cp example.ms subdomain.example.ms&amp;lt;/code&amp;gt; or creating a new file by running &amp;lt;code&amp;gt;sudo vim subdomain.example.ms&amp;lt;/code&amp;gt;. If you copied it, edit the file by running &amp;lt;code&amp;gt;sudo vim subdomain.example.ms&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===What needs to be changed===&lt;br /&gt;
The only important things that need to be changed are the &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; variables. Press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to start editing the file in Vim, and then find where the variables are located. Change the &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; variable to an updated path where the contents for the subdomain can be found. Generally, good practice for this is to create a new folder in the primary domains path with the name of the subdomain. So, if we were trying to create &amp;lt;code&amp;gt;subdomain.example.ms&amp;lt;/code&amp;gt;, we'd create a new folder by running the command  &amp;lt;code&amp;gt;sudo mkdir /var/www/example.ms/subdomain&amp;lt;/code&amp;gt;. Then, we'd modify our &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; variable to look something like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
# before&lt;br /&gt;
root /var/www/example.ms;&lt;br /&gt;
&lt;br /&gt;
# after&lt;br /&gt;
root /var/www/example.ms/subdomain;&lt;br /&gt;
&amp;lt;/pre&amp;gt;The &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; variable is just as simple. Just add the subdomain prefix to the beginning of your domain:&lt;br /&gt;
 # before&lt;br /&gt;
 server_name example.ms;&lt;br /&gt;
 &lt;br /&gt;
 # after&lt;br /&gt;
 server_name subdomain.example.ms;&lt;br /&gt;
Once you've made the proper changes, save and quit the file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Then, run &amp;lt;code&amp;gt;cd ../sites-enabled &amp;amp;&amp;amp; sudo ln -s /etc/nginx/sites-available/subdomain.example.ms ./&amp;lt;/code&amp;gt; and restart nginx by running &amp;lt;code&amp;gt;sudo systemctl restart nginx&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Adding other domains (that aren't subdomains)==&lt;br /&gt;
The process is exactly the same as adding a subdomain, except instead of adding a prefix the value of &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; you'll just completely change the domain. Again, don't forget to create the symbolic link to the configuration file and ''especially'' don't forget to restart nginx after saving the config/creating the symbolic link. When you're creating the folder to contain the contents for the server, create a new folder that has the name of the domain. So, for instance, if I was creating example2.ms, I'd run &amp;lt;code&amp;gt;sudo mkdir /var/www/example2.ms&amp;lt;/code&amp;gt;. Now that the domain is ready go to [http://wiki.24pin.tech/index.php?title=WordPress WordPress]if you are planning on using WordPress as your editor.&lt;br /&gt;
&lt;br /&gt;
==Adding HTTPS to a domain with LetsEncrypt (certbot)==&lt;br /&gt;
If you're adding a new domain to Nginx and want to enable https on a new domain, run &amp;lt;code&amp;gt;sudo certbot --nginx -d domain.com&amp;lt;/code&amp;gt; where &amp;lt;code&amp;gt;domain.com&amp;lt;/code&amp;gt;  is the domain that you want to add. Once you've done this, check the domain and look for a lock icon in the url bar of your browser.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' '''It could possibly take up to 24-72 hours for it to be enabled, although at the time of writing the changes propagated almost immediately.'''&lt;br /&gt;
&lt;br /&gt;
==Conclusion==&lt;br /&gt;
By now, your nginx server should be up and fully operational. As always, if you're having any issues please STFW before you ask people for advice!&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Thank you,&lt;br /&gt;
&lt;br /&gt;
- Tyler&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Nginx&amp;diff=1119</id>
		<title>Nginx</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Nginx&amp;diff=1119"/>
		<updated>2021-03-08T21:13:22Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: new section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==About==&lt;br /&gt;
Nginx (pronounced engine-x) is web server which can also be used  proxy, load balancer, mail proxy and HTTP cache. It's also a modern alternative to something like Apache, IIS, or Caddy.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
An nginx installation should be pretty accessible regardless of your OS. This guide is specifically written for Ubuntu Server 18.04 LTS, but should work on any other type of Unix operating system. The setup that we're using is commonly referred to as a LEMP stack (Linux, nginx, MySQL, PHP.)&lt;br /&gt;
&lt;br /&gt;
*nginx/1.14.0 (Ubuntu)&lt;br /&gt;
*PHP 7.2.10-0ubuntu0.18.04.1 (cli)&lt;br /&gt;
*MySQL v14.14 Distribution 5.7.24&lt;br /&gt;
&lt;br /&gt;
If you've just installed a new operating system, you'll want to update your local package index by running &amp;lt;code&amp;gt;sudo apt-get update&amp;lt;/code&amp;gt;, and then add the Universe repository by running &amp;lt;code&amp;gt;sudo apt-add-repository universe&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Installing nginx==&lt;br /&gt;
To start, you're going to want to install nginx using the aptitude package manager. You can do this by running &amp;lt;code&amp;gt;sudo apt-get install nginx&amp;lt;/code&amp;gt;. Once you run that, you'll want to go through the configuration prompt that appears.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
After nginx and its subsequent dependencies have finished installing, you'll want to let it through the firewall by running &amp;lt;code&amp;gt;sudo ufw allow 'Nginx HTTP'&amp;lt;/code&amp;gt;. Check what your current IP is by running &amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt;, and then look for whatever interface looks correct. In this instance, the proper interface is &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
[[File:Ifconfig-example.png|left|frame|an example of the results from ifconfig]]&lt;br /&gt;
After running the command, the first indented line should say '''''inet''''' and then an IP address afterwards. Verify functionality of nginx by going to your web browser and typing &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://{ip}/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; where &amp;lt;code&amp;gt;{ip}&amp;lt;/code&amp;gt; is what follows after '''''inet'''''.&lt;br /&gt;
&lt;br /&gt;
If the default nginx page displays, continue to the next section.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Installing MySQL==&lt;br /&gt;
The process of installing MySQL is fairly similar to installing nginx, although MySQL does require a little bit of configuration before it will function properly. Start off by running &amp;lt;code&amp;gt;sudo apt-get install mysql-server&amp;lt;/code&amp;gt;, and then once it finishes run the setup script by typing &amp;lt;code&amp;gt;sudo mysql_secure_installation&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
The first thing that the installations script will ask you is if you'd like to enable the &amp;lt;code&amp;gt;VALIDATE PASSWORD PLUGIN&amp;lt;/code&amp;gt;, but don't. If you don't care about why, then skip to the next paragraph, but if you do, keep reading. Essentially, the plugin throws errors if passwords don't meet specific criteria. This causes issues if you either a.) use weak passwords, or b.) install a package that automatically compiles and creates a default account with basic credentials. '''It is always good practice to use strong passwords for everything, and database credentials are no exception.'''&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Say yes to the rest of the questions and use good judgement if it asks something that requires anything other than a Y/N input.&lt;br /&gt;
&lt;br /&gt;
==Installing PHP==&lt;br /&gt;
Again, installing PHP is very similar to two sections preceding this one. Start off by installing the &amp;lt;code&amp;gt;php-fpm&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;php-mysql&amp;lt;/code&amp;gt; packages by running &amp;lt;code&amp;gt;sudo apt-get install php-fpm php-mysql&amp;lt;/code&amp;gt;. After it installs, you'll want to edit &amp;lt;code&amp;gt;php.ini&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo vim /etc/php/7.2/fpm/php.ini&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
'''''Note:''' If the file isn't found, check'' the directory path by using the &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; command and seeing where something doesn't exist.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If you're using Vim, type a &amp;lt;code&amp;gt;?&amp;lt;/code&amp;gt; and search for &amp;lt;code&amp;gt;cgi.fix_pathinfo&amp;lt;/code&amp;gt;. You should be taken to a line that's commented out and says &amp;lt;code&amp;gt;;cgi.fix_pathinfo=0&amp;lt;/code&amp;gt; or something similar. Press the &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; key to start editing and remove the &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt; to uncomment it. If the variable is set to 1, change it to 0. Press the &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; key and type &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt; to save and quit your changes. If you didn't run Vim as a superuser (if you didn't run the command with &amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt;), it will throw and error and the file won't save.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once the file saves, run &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt; to restart PHP.&lt;br /&gt;
&lt;br /&gt;
==Configuring nginx==&lt;br /&gt;
The configuration for nginx is a little different compared to anything you might be used to. To start, there are two directories: &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;sites-enabled&amp;lt;/code&amp;gt;. The former directory actually contains the configuration files, while the latter contains symbolic links to the configuration files and enables them.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
To start, lets say that we wanted to configure our nginx server to work with the domain &amp;lt;code&amp;gt;example.ms&amp;lt;/code&amp;gt;. First, we'd want to verify that the directory &amp;lt;code&amp;gt;/var/www/example.ms&amp;lt;/code&amp;gt; exists. Move to the &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; directory by entering the command &amp;lt;code&amp;gt;cd /etc/nginx/sites-available&amp;lt;/code&amp;gt;. Next, you'll want to create a new configuration file with the name of the domain. You can either by running &amp;lt;code&amp;gt;sudo touch example.ms &amp;amp;&amp;amp; sudo vim example.ms&amp;lt;/code&amp;gt; or simply by running &amp;lt;code&amp;gt;sudo vim example.ms&amp;lt;/code&amp;gt; since Vim creates the file if it doesn't exist. Again, press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to edit the file. Once you're in edit mode, you'll want the contents to look something like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
server {&lt;br /&gt;
     listen 80;&lt;br /&gt;
     listen [::]:80;&lt;br /&gt;
&lt;br /&gt;
     # this is a comment! you don't have to include this, but if you're not&lt;br /&gt;
     # going to be using a domain, then you can replace it with an IP&lt;br /&gt;
     server_name example.ms;&lt;br /&gt;
&lt;br /&gt;
     root /var/www/example.ms;&lt;br /&gt;
     index index.php index.html index.htm;&lt;br /&gt;
&lt;br /&gt;
     location = /favicon.io {&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
          access_log off;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location = /robots.txt {&lt;br /&gt;
          allow all;&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
          access_log off;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location / {&lt;br /&gt;
          try_files $uri $uri/ /index.php$args;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location ~ \.php$ {&lt;br /&gt;
          include snippets/fastcgi-php.conf;&lt;br /&gt;
          fastcgi_intercept_errors on;&lt;br /&gt;
          fastcgi_pass unix:/run/php/php7.2-fpm.sock;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
     location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {&lt;br /&gt;
          expires max;&lt;br /&gt;
          log_not_found off;&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;'''''Tip:''' You can periodically save your configuration file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt;, typing &amp;lt;code&amp;gt;:w&amp;lt;/code&amp;gt; , and then pressing &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; again to edit the file.''&lt;br /&gt;
&lt;br /&gt;
'''''Tip''''': If you are adding another domain the &amp;lt;code&amp;gt;listen 80;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;listen [::]:80;&amp;lt;/code&amp;gt; isn't needed and you can go from &amp;lt;code&amp;gt;server {&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;server_name example.ms;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''.''&lt;br /&gt;
&lt;br /&gt;
Once you're completely done editing, save and quit the file by pressing the escape key and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Finally, you can check your configuration file for errors by running &amp;lt;code&amp;gt;sudo nginx -t&amp;lt;/code&amp;gt;. If there are any errors, refer back to your configuration file and see where you went wrong. In the event that nginx threw an error, review your configuration file and look for any missing &amp;lt;code&amp;gt;{&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;}&amp;lt;/code&amp;gt;, or &amp;lt;code&amp;gt;;&amp;lt;/code&amp;gt;. Every line that doesn't have curly brackets should end in a semicolon, which is probably the issue. If that isn't, then refer to your favorite search engine and start researching.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If nothing went wrong, and your configuration file is completely free of errors, run &amp;lt;code&amp;gt;cd ../sites-enabled&amp;lt;/code&amp;gt; to move to the sites-enabled directory. Finally, to enable your website, run &amp;lt;code&amp;gt;sudo ln -s /etc/nginx/sites-available/example.ms ./&amp;lt;/code&amp;gt; to create the symbolic link to your configuration file, and then run &amp;lt;code&amp;gt;sudo systemctl restart nginx&amp;lt;/code&amp;gt; to restart nginx and make your changes go live.&lt;br /&gt;
&lt;br /&gt;
==Verifying Functionality==&lt;br /&gt;
Of course, you'll want to make sure that everything you just did actually works. Run &amp;lt;code&amp;gt;cd /var/www/example.ms &amp;amp;&amp;amp; sudo vim info.php&amp;lt;/code&amp;gt; to move to your websites home directory and create the file &amp;lt;code&amp;gt;info.php&amp;lt;/code&amp;gt;. Inside of the file, type the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
     phpinfo();&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;... and then save and quit the file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Now, go to &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://example.ms/info.php&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. If you didn't configure the nameservers for your domain to point to your new nginx server, then just replace the domain name with the IP of the server (refer to the &amp;lt;code&amp;gt;ifconfig&amp;lt;/code&amp;gt; part of the [[Nginx#Installing nginx|Installing nginx]] section if you don't know how.)&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
If everything worked properly, you should see a PHP information page with a bunch of library authors and enabled modules. If it doesn't, research!&lt;br /&gt;
&lt;br /&gt;
==Subdomains==&lt;br /&gt;
Adding subdomains is really easy and doesn't require a lot of effort. You'll just need to remember the general process from the [[Nginx#Configuring nginx|Configuring nginx]] section.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
To start, navigate to the &amp;lt;code&amp;gt;sites-available&amp;lt;/code&amp;gt; directory by running  &amp;lt;code&amp;gt;cd /etc/nginx/sites-available&amp;lt;/code&amp;gt;. Then, you can either copy a pre-existing configuration by running &amp;lt;code&amp;gt;sudo cp example.ms subdomain.example.ms&amp;lt;/code&amp;gt; or creating a new file by running &amp;lt;code&amp;gt;sudo vim subdomain.example.ms&amp;lt;/code&amp;gt;. If you copied it, edit the file by running &amp;lt;code&amp;gt;sudo vim subdomain.example.ms&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===What needs to be changed===&lt;br /&gt;
The only important things that need to be changed are the &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; variables. Press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to start editing the file in Vim, and then find where the variables are located. Change the &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; variable to an updated path where the contents for the subdomain can be found. Generally, good practice for this is to create a new folder in the primary domains path with the name of the subdomain. So, if we were trying to create &amp;lt;code&amp;gt;subdomain.example.ms&amp;lt;/code&amp;gt;, we'd create a new folder by running the command  &amp;lt;code&amp;gt;sudo mkdir /var/www/example.ms/subdomain&amp;lt;/code&amp;gt;. Then, we'd modify our &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; variable to look something like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
# before&lt;br /&gt;
root /var/www/example.ms;&lt;br /&gt;
&lt;br /&gt;
# after&lt;br /&gt;
root /var/www/example.ms/subdomain;&lt;br /&gt;
&amp;lt;/pre&amp;gt;The &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; variable is just as simple. Just add the subdomain prefix to the beginning of your domain:&lt;br /&gt;
 # before&lt;br /&gt;
 server_name example.ms;&lt;br /&gt;
 &lt;br /&gt;
 # after&lt;br /&gt;
 server_name subdomain.example.ms;&lt;br /&gt;
Once you've made the proper changes, save and quit the file by pressing &amp;lt;code&amp;gt;escape&amp;lt;/code&amp;gt; and typing &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt;. Then, run &amp;lt;code&amp;gt;cd ../sites-enabled &amp;amp;&amp;amp; sudo ln -s /etc/nginx/sites-available/subdomain.example.ms ./&amp;lt;/code&amp;gt; and restart nginx by running &amp;lt;code&amp;gt;sudo systemctl restart nginx&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Adding other domains (that aren't subdomains)==&lt;br /&gt;
The process is exactly the same as adding a subdomain, except instead of adding a prefix the value of &amp;lt;code&amp;gt;server_name&amp;lt;/code&amp;gt; you'll just completely change the domain. Again, don't forget to create the symbolic link to the configuration file and ''especially'' don't forget to restart nginx after saving the config/creating the symbolic link. When you're creating the folder to contain the contents for the server, create a new folder that has the name of the domain. So, for instance, if I was creating example2.ms, I'd run &amp;lt;code&amp;gt;sudo mkdir /var/www/example2.ms&amp;lt;/code&amp;gt;. Now that the domain is ready go to [http://wiki.24pin.tech/index.php?title=WordPress WordPress]if you are planning on using WordPress as your editor.&lt;br /&gt;
&lt;br /&gt;
== Adding HTTPS to a subdomain with LetsEncrypt (certbot) ==&lt;br /&gt;
adsfadsfadfsdfsa&lt;br /&gt;
&lt;br /&gt;
==Conclusion==&lt;br /&gt;
By now, your nginx server should be up and fully operational. As always, if you're having any issues please STFW before you ask people for advice!&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Thank you,&lt;br /&gt;
&lt;br /&gt;
- Tyler&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Adding_Documentation_to_the_Wiki&amp;diff=907</id>
		<title>Adding Documentation to the Wiki</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Adding_Documentation_to_the_Wiki&amp;diff=907"/>
		<updated>2019-05-17T20:11:37Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== NOTICE ==&lt;br /&gt;
This page is deprecated because of the addition of VisualEditor. If you're a heathen like [[User:Bsanders]] and use Source Editor, this page will help you with that.&lt;br /&gt;
&lt;br /&gt;
==Getting the Documentation Ready==&lt;br /&gt;
Before you start transferring your documentation over, you'll want to make sure it's written first. Ideally, to keep things clean here, your documentation should be split into sections with formal topic names. For instance, if you were documenting how to make a peanut butter and jelly sandwich, you would want to have something like:&lt;br /&gt;
&lt;br /&gt;
'''Introduction'''&lt;br /&gt;
&lt;br /&gt;
[a brief summary of what will be covered in the article]&lt;br /&gt;
&lt;br /&gt;
'''Preparing the Ingredients'''&lt;br /&gt;
&lt;br /&gt;
[description of what you need to do to prepare the ingredients]&lt;br /&gt;
&lt;br /&gt;
'''Acquiring Proper Utensils'''&lt;br /&gt;
&lt;br /&gt;
[again, just a description of what the proper utensils are (and maybe even ''where'' to get them)]&lt;br /&gt;
&lt;br /&gt;
'''Making the Sandwich'''&lt;br /&gt;
&lt;br /&gt;
[you get the idea]&lt;br /&gt;
&lt;br /&gt;
'''Optional Sides'''&lt;br /&gt;
&lt;br /&gt;
[...]&lt;br /&gt;
&lt;br /&gt;
'''Enjoying the Meal'''&lt;br /&gt;
&lt;br /&gt;
[...]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Transferring it to the Wiki (the fun part)==&lt;br /&gt;
Assuming you've written out your documentation, it's quite easy to transfer over to the wiki. First and foremost, you want to be logged in. In the top right corner (if you're not already logged in) there will be blue text that says &amp;quot;Log in&amp;quot;. Click it, and if you need your credentials just come up to me (Tyler) and ask. After that, find your way to the search bar in the same cozy top right corner as before and search for what you want your article to be titled.&lt;br /&gt;
&lt;br /&gt;
[[File:Search.png]]&lt;br /&gt;
&lt;br /&gt;
Hopefully, it will say at the top of the search results &amp;quot;Create the page [title of your page] on this wiki!&amp;quot;. If it doesn't, it will say there is already another page with the same title. Moving on, click the red text that says the title of your page and then paste in your documentation!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Formatting the Page==&lt;br /&gt;
Everyone contributing should aim for consistent and high quality pages. We want this because not only would it make 24PinTech look good, but we can also eventually be established as a credible source for tech related guides/information outside of the city. With that out of the way, here's the good stuff:&lt;br /&gt;
&lt;br /&gt;
(baited, there's just a little bit more you need to know before continuing)&lt;br /&gt;
&lt;br /&gt;
What '''not''' to do when formatting/proofreading:&lt;br /&gt;
&lt;br /&gt;
*paste an unformatted document and publish it&lt;br /&gt;
*&amp;lt;nowiki&amp;gt;*use numbered lists for the entire document&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
*include broken links&lt;br /&gt;
*leave major grammar errors in your writing&lt;br /&gt;
*forget to proofread&lt;br /&gt;
&lt;br /&gt;
''* = To elaborate: despite numbered lists being straightforward, they look pretty lazy (which we don't want). There are certain exceptions (like when you need to include how to get somewhere, use a certain command/program, et cetera), but just try to avoid using them overall.''&lt;br /&gt;
&lt;br /&gt;
What '''to''' do when formatting:&lt;br /&gt;
&lt;br /&gt;
*the contrary of everything above&lt;br /&gt;
&lt;br /&gt;
===Actual Text Formatting===&lt;br /&gt;
Here's a really summarized version for what you'll need by me:&lt;br /&gt;
&lt;br /&gt;
*Escape wiki markup: &amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;nowiki&amp;gt;''no formatting!'' '''''owo'''''&amp;lt;/nowiki&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
*New section: &amp;lt;pre&amp;gt;== Section Title ==&amp;lt;/pre&amp;gt;&lt;br /&gt;
*New subsection: &amp;lt;pre&amp;gt;(inside of a section) == Subsection Title ==&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Bold text: &amp;lt;pre&amp;gt;'''bold!'''&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Italic text: &amp;lt;pre&amp;gt;''italics!''&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Bold and italic text: &amp;lt;pre&amp;gt;'''''bold and italic!'''''&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Bulleted list: &amp;lt;pre&amp;gt;* Start each line with an asterisk, to go deeper start the nextline with 1 more than the previous&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Horizontal line: &amp;lt;pre&amp;gt;----&amp;lt;/pre&amp;gt;&lt;br /&gt;
*External link: &amp;lt;pre&amp;gt;[https://google.com Google]&amp;lt;/pre&amp;gt; (shows up as [https://google.com Google])&lt;br /&gt;
*Internal link: &amp;lt;pre&amp;gt;[[Title of Wiki Article]]&amp;lt;/pre&amp;gt; (shows up as [[Title of Wiki Article]])&lt;br /&gt;
&lt;br /&gt;
===Tables===&lt;br /&gt;
A brief documentation of creating tables would be impossible due to how broad and detailed you can make them. MediaWiki provides excellent documentation on it which can be found [https://www.mediawiki.org/wiki/Help:Tables here].&lt;br /&gt;
&lt;br /&gt;
===Images===&lt;br /&gt;
For images, I moved this to a subsection so it can properly be displayed on how to use them. First and foremost, any and all questions you have on embedding images into your wiki posts can be found [https://www.mediawiki.org/wiki/Help:Images here], but below is a brief rundown.&lt;br /&gt;
&lt;br /&gt;
To begin, start by going to the file upload page ([[Special:Upload]]). Be sure to give it [the file] a name you can remember. For instance, if I were embedding an image of dogs, I would want to go to the upload page ([[Special:Upload]]) and upload the file and name it something like: &amp;lt;pre&amp;gt;dogs.jpg&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Upload example.png]]&lt;br /&gt;
&lt;br /&gt;
Next, on your page, write &amp;lt;nowiki&amp;gt;[[File:YourFileName.extension]]&amp;lt;/nowiki&amp;gt;. In this example, it would be:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;[[File:Dogs.jpg]]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Which shows up as:&lt;br /&gt;
&lt;br /&gt;
[[File:Dogs.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Full Documentation===&lt;br /&gt;
For MediaWiki's ''full'' documentation of how to format, click [https://www.mediawiki.org/wiki/Help:Formatting here].&lt;br /&gt;
&lt;br /&gt;
==Example of a Formatted Article==&lt;br /&gt;
If you're still confused on what was covered earlier, an example using the aforementioned analogy with PB&amp;amp;J's is below.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
== Introduction ==&lt;br /&gt;
If you're unaware, a PB&amp;amp;J (peanut butter and jelly [sandwich]) is a two pieces of bread with peanut butter spread on one side of a slice of bread, and jelly on another piece. It offers protein (varies depending on how much peanut butter you put on it) and also gives 20% of the recommended daily Vitamin E intake.&lt;br /&gt;
&lt;br /&gt;
For more information on the nutritional benefits of a sandwich, [http://healthyeating.sfgate.com/benefits-peanut-butter-jelly-sandwiches-5553.html click here].&lt;br /&gt;
&lt;br /&gt;
== Preparing the Ingredients ==&lt;br /&gt;
Preparing the ingredients to make a PB&amp;amp;J is quite simple. All you need is 2 slices of bread and a sufficient amount of peanut butter and jelly (or jam) for the bread. If you don't have these ingredients you can either go to a [https://www.google.com/search?q=grocery+stores+near+me nearby grocery store] or shop online from a place like [https://amazon.com/ Amazon].&lt;br /&gt;
&lt;br /&gt;
== Acquiring Proper Utensils ==&lt;br /&gt;
The utensils you will need are as follows:&lt;br /&gt;
* 1 Plate&lt;br /&gt;
* 1 Butter Knife (or any other knives of your choice)&lt;br /&gt;
** NOTE: A sharp knife is not necessary. In fact, anything that can spread the peanut butter and jelly onto the bread will work just fine.&lt;br /&gt;
&lt;br /&gt;
You can also get those [https://amazon.com/ online] or from a [https://www.google.com/search?q=grocery+stores+near+me local grocery store].&lt;br /&gt;
&lt;br /&gt;
== Making the Sandwich ==&lt;br /&gt;
=== First Step ===&lt;br /&gt;
Put the two slices of bread flat on your plate and open both the peanut butter and jelly jars. Take your knife (or other obscure utensil you have decided on using), put it in the peanut butter jar, and get some peanut butter on the utensil. Next, spread it ''evenly'' on one slice of bread, only on one side.&lt;br /&gt;
&lt;br /&gt;
=== Second Step ===&lt;br /&gt;
Get the remaining peanut butter off of the utensil either by wiping it onto the other slice of bread or onto a napkin. Once the utensil is clean again, dip it into the jelly/jam jar and repeat the same process onto the other slice of bread.&lt;br /&gt;
&lt;br /&gt;
== Optional Sides ==&lt;br /&gt;
Depending on who you are, you will like different side dishes with your completed PB&amp;amp;J sandwich (if any at all). Some people like chips, others like fruits, and some eat it with spaghetti or other miscellaneous pastas. It entirely depends on who you are, and this is up to you. Looking around your kitchen/house for various foods or edible objects can help inspire you with ideas.&lt;br /&gt;
&lt;br /&gt;
A link to this example can be found [http://10.21.25.11/wiki/index.php/Making_a_Peanut_Butter_%26_Jelly_Sandwich here].&lt;br /&gt;
&lt;br /&gt;
== Enjoying the Meal ==&lt;br /&gt;
You're finally completed with the extraneous process of making a PB&amp;amp;J! All you have to do now is eat and enjoy it.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can find this example here: [[Making a Peanut Butter &amp;amp; Jelly Sandwich]]&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=906</id>
		<title>WordPress</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=906"/>
		<updated>2019-05-16T20:29:09Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
[[File:Wp-admin.png|thumb|screenshot of the WordPress admin dashboard]]&lt;br /&gt;
[https://wordpress.org/ WordPress] is a content management system (CMS) that is functions primarily serve our [http://24pin.tech/ homepage] to users that would like to get help or discover more about the program. It's a very powerful platform that grants administrators creative freedom over whatever they want on their website.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation for WordPress is really simple. All you have to do is download the compressed file for the installation and extract it in the directory that you'd want to install it to. You can either download it from their [https://wordpress.org/download/ website here] or alternatively you can download it using &amp;lt;code&amp;gt;wget&amp;lt;/code&amp;gt;. The command would be &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://wordpress.org/latest.tar.gz&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; on UNIX systems (if you're using aptitude for your package manager.) Once you've downloaded the file, run &amp;lt;code&amp;gt;tar -xzvf latest.tar.gz&amp;lt;/code&amp;gt; to extract it.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once you've downloaded and extracted the file, visit your web server to continue with the installation process. The rest of the instructions are on the page of the web installer. &lt;br /&gt;
&lt;br /&gt;
==Management==&lt;br /&gt;
WordPress was created with the user's experience in mind. The dashboard is very intuitive, and the community is large enough to have answers to most questions/problems. In order to manage a WordPress powered website, you need to use the admin dashboard. In order to get to it, go to the WordPress installation's root directory and then navigate to the &amp;lt;code&amp;gt;/wp-admin&amp;lt;/code&amp;gt; directory (i.e. website.com/wp-admin). From there, you can edit posts, the theme, pages, plugins, and more. If you don't know how to do something, Google it! The WordPress community has been around since 2003, so your question has most likely been asked and answered before.&lt;br /&gt;
&lt;br /&gt;
=== Logging In ===&lt;br /&gt;
In order to log into WordPress, go to website.com'''/wp-admin''' (replace website.com with your domain).&lt;br /&gt;
[[File:W1.png|left|frameless|208x208px|screenshot of the login page]]&lt;br /&gt;
&lt;br /&gt;
[[File:W2.png|left|thumb|150x150px|the ''Users'' tab on the sidebar in the dashboard]]&lt;br /&gt;
&lt;br /&gt;
=== Creating Accounts ===&lt;br /&gt;
If you need to create an account, go to '''Users → Add New''' from the WordPress dashboard. From there, fill out all of the information for the new account and press the ''Add New User'' button.&lt;br /&gt;
&lt;br /&gt;
If you need to edit any of the users (change username, reset password, etc), navigate to '''Users → All Users''' and click on the one that you need to modify.&lt;br /&gt;
&lt;br /&gt;
=== Adding Menu Items ===&lt;br /&gt;
Before you can add an item to your primary menu, you need to have a new (or preexisting) page. If you need to create one, go to '''Pages → Add New''' and create it. Once it's created, navigate to '''Appearance → Menus''' and draw your attention to the ''Add Menu Items'' section. Find your new page in the list and click on the checkbox and click ''Add To Menu''.&lt;br /&gt;
[[File:W3.png|left|thumb|204x204px|adding an item to the ''Menu structure'' section]]&lt;br /&gt;
&lt;br /&gt;
=== Editing Page Contents ===&lt;br /&gt;
lksjdfladsjf&lt;br /&gt;
[[File:W4.png|left|thumb|what it should look like when trying to create a dropdown menu]]&lt;br /&gt;
&lt;br /&gt;
=== Adding/Modifying Themes ===&lt;br /&gt;
adfadfasdf&lt;br /&gt;
&lt;br /&gt;
=== Uploading Images ===&lt;br /&gt;
ldkfjalkdfj&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
f after an installation you get prompted for FTP credentials, add the following line to the wp-config.php file in the directory that WordPress was installed &lt;br /&gt;
 define(“FS_METHOD”, “direct”);&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W10.png&amp;diff=905</id>
		<title>File:W10.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W10.png&amp;diff=905"/>
		<updated>2019-05-16T20:17:48Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;media upload page&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W9.png&amp;diff=904</id>
		<title>File:W9.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W9.png&amp;diff=904"/>
		<updated>2019-05-16T20:17:20Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;customize page sidebar&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W8.png&amp;diff=903</id>
		<title>File:W8.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W8.png&amp;diff=903"/>
		<updated>2019-05-16T20:16:22Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;getting to the customization page for a theme&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W7.png&amp;diff=902</id>
		<title>File:W7.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W7.png&amp;diff=902"/>
		<updated>2019-05-16T20:15:07Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;an example theme in the Themes → Add New section&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W6.png&amp;diff=901</id>
		<title>File:W6.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W6.png&amp;diff=901"/>
		<updated>2019-05-16T20:14:46Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;screenshot of a post being edited&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W5.png&amp;diff=900</id>
		<title>File:W5.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W5.png&amp;diff=900"/>
		<updated>2019-05-16T20:14:17Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;screenshot of how to edit pages&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W4.png&amp;diff=899</id>
		<title>File:W4.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W4.png&amp;diff=899"/>
		<updated>2019-05-16T20:13:54Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;what it should look like when trying to create a dropdown menu&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W3.png&amp;diff=898</id>
		<title>File:W3.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W3.png&amp;diff=898"/>
		<updated>2019-05-16T20:13:32Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;adding an item to the Menu structure section&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W2.png&amp;diff=897</id>
		<title>File:W2.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W2.png&amp;diff=897"/>
		<updated>2019-05-16T20:13:12Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;the Users tab on the sidebar in the dashboard&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:W1.png&amp;diff=896</id>
		<title>File:W1.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:W1.png&amp;diff=896"/>
		<updated>2019-05-16T20:12:24Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;screenshot of the login page&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Vim&amp;diff=895</id>
		<title>Vim</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Vim&amp;diff=895"/>
		<updated>2019-05-13T20:26:37Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: Created page with &amp;quot;== About == The splash screen for Vim According to the official Vim website, &amp;quot;Vim is a highly configurable text editor for efficiently creating a...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About ==&lt;br /&gt;
[[File:Vim-splash.png|thumb|The splash screen for Vim]]&lt;br /&gt;
According to the official Vim website, &amp;quot;Vim is a highly configurable text editor for efficiently creating and changing any kind of text. It is included as &amp;quot;vi&amp;quot; with most UNIX systems and with Apple OS X.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Basic Usage ==&lt;br /&gt;
The syntax for Vim is pretty straightforward. You can edit files by running &amp;lt;code&amp;gt;vim filename&amp;lt;/code&amp;gt; to open the file with Vim, but if the file doesn't exist Vim will create one for you. Once you're in the editor, press &amp;lt;code&amp;gt;i&amp;lt;/code&amp;gt; to start inserting text. After you're finished editing the file, press the escape key and then enter &amp;lt;code&amp;gt;:wq&amp;lt;/code&amp;gt; to save the file. If you need to exit out of the file, press escape and enter &amp;lt;code&amp;gt;:q&amp;lt;/code&amp;gt;, and if you need to exit without saving press escape and type &amp;lt;code&amp;gt;:q!&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Other than that, there isn't much more that you need to know. For more advanced tips, check out the [https://vim.fandom.com/wiki/Vim_Tips_Wiki Vim Tips Wiki].&lt;br /&gt;
&lt;br /&gt;
'''NOTICE:''' Please make sure that you have permission to write to the directory that you're editing the file in. If you don't check and make sure, you won't be able to save the file and will lose whatever changes you made.&lt;br /&gt;
&lt;br /&gt;
== Common Problems ==&lt;br /&gt;
&lt;br /&gt;
=== Can't open file for writing ===&lt;br /&gt;
[[File:Vim-permissions.png|left|frameless]]&lt;br /&gt;
&lt;br /&gt;
This problem occurs when you don't have permission to write to the file. To fix this, press the escape key and type &amp;lt;code&amp;gt;:q!&amp;lt;/code&amp;gt; to quit without saving. Then, run the same command again but prefixed with &amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:Vim-splash.png&amp;diff=894</id>
		<title>File:Vim-splash.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:Vim-splash.png&amp;diff=894"/>
		<updated>2019-05-13T20:09:34Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;the splash screen for vim&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:Vim-permissions.png&amp;diff=893</id>
		<title>File:Vim-permissions.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:Vim-permissions.png&amp;diff=893"/>
		<updated>2019-05-13T20:08:49Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;permissions error for vim&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=892</id>
		<title>WordPress</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=892"/>
		<updated>2019-05-13T19:56:33Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
[[File:Wp-admin.png|thumb|screenshot of the WordPress admin dashboard]]&lt;br /&gt;
[https://wordpress.org/ WordPress] is a content management system (CMS) that is functions primarily serve our [http://24pin.tech/ homepage] to users that would like to get help or discover more about the program. It's a very powerful platform that grants administrators creative freedom over whatever they want on their website.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation for WordPress is really simple. All you have to do is download the compressed file for the installation and extract it in the directory that you'd want to install it to. You can either download it from their [https://wordpress.org/download/ website here] or alternatively you can download it using &amp;lt;code&amp;gt;wget&amp;lt;/code&amp;gt;. The command would be &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://wordpress.org/latest.tar.gz&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; on UNIX systems (if you're using aptitude for your package manager.) Once you've downloaded the file, run &amp;lt;code&amp;gt;tar -xzvf latest.tar.gz&amp;lt;/code&amp;gt; to extract it.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once you've downloaded and extracted the file, visit your web server to continue with the installation process. The rest of the instructions are on the page of the web installer. &lt;br /&gt;
&lt;br /&gt;
==Management==&lt;br /&gt;
WordPress was created with the user's experience in mind. The dashboard is very intuitive, and the community is large enough to have answers to most questions/problems. In order to manage a WordPress powered website, you need to use the admin dashboard. In order to get to it, go to the WordPress installation's root directory and then navigate to the &amp;lt;code&amp;gt;/wp-admin&amp;lt;/code&amp;gt; directory (i.e. website.com/wp-admin). From there, you can edit posts, the theme, pages, plugins, and more. If you don't know how to do something, Google it! The WordPress community has been around since 2003, so your question has most likely been asked and answered before.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
If after an installation you get prompted for FTP credentials, add the following line to the wp-config.php file in the directory that WordPress was installed in. &lt;br /&gt;
 define(“FS_METHOD”, “direct”);&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=843</id>
		<title>WordPress</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=843"/>
		<updated>2019-04-22T20:06:18Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
[[File:Wp-admin.png|thumb|screenshot of the WordPress admin dashboard]]&lt;br /&gt;
[https://wordpress.org/ WordPress] is a content management system (CMS) that is functions primarily serve our [http://24pin.tech/ homepage] to users that would like to get help or discover more about the program. It's a very powerful platform that grants administrators creative freedom over whatever they want on their website.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation for WordPress is really simple. All you have to do is download the compressed file for the installation and extract it in the directory that you'd want to install it to. You can either download it from their [https://wordpress.org/download/ website here] or alternatively you can download it using &amp;lt;code&amp;gt;wget&amp;lt;/code&amp;gt;. The command would be &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://wordpress.org/latest.tar.gz&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; on UNIX systems (if you're using aptitude for your package manager.) Once you've downloaded the file, run &amp;lt;code&amp;gt;tar -xzvf latest.tar.gz&amp;lt;/code&amp;gt; to extract it.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once you've downloaded and extracted the file, visit your web server to continue with the installation process. The rest of the instructions are on the page of the web installer. &lt;br /&gt;
&lt;br /&gt;
==Management==&lt;br /&gt;
WordPress was created with the user's experience in mind. The dashboard is very intuitive, and the community is large enough to have answers to most questions/problems. In order to manage a WordPress powered website, you use the admin dashboard.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=MediaWiki:Sidebar&amp;diff=840</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=MediaWiki:Sidebar&amp;diff=840"/>
		<updated>2019-02-27T18:31:36Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* navigation&lt;br /&gt;
** mainpage|mainpage-description&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** helppage|help&lt;br /&gt;
&lt;br /&gt;
* General&lt;br /&gt;
** Special:AllPages|All Pages&lt;br /&gt;
** Special:NewFiles|All Uploads&lt;br /&gt;
** Special:Contributions|User Contributions&lt;br /&gt;
&lt;br /&gt;
* Useful Links&lt;br /&gt;
** http://24pin.tech/calendar|Calendar&lt;br /&gt;
** Email_Templates|Email Templates&lt;br /&gt;
** ITop|ITop&lt;br /&gt;
** 24PinTech_Policy|Policy&lt;br /&gt;
** Procedures|Work Order Procedures&lt;br /&gt;
** Spiceworks|Spiceworks&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=MediaWiki:Sidebar&amp;diff=839</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=MediaWiki:Sidebar&amp;diff=839"/>
		<updated>2019-02-27T18:31:15Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* navigation&lt;br /&gt;
** mainpage|mainpage-description&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** helppage|help&lt;br /&gt;
&lt;br /&gt;
* General&lt;br /&gt;
** Special:AllPages|All Pages&lt;br /&gt;
** Special:NewFiles|All Uploads&lt;br /&gt;
** Special:Contributions|User Contributions&lt;br /&gt;
&lt;br /&gt;
* Useful Links&lt;br /&gt;
** Calendar|http://24pin.tech/calendar&lt;br /&gt;
** Email_Templates|Email Templates&lt;br /&gt;
** ITop|ITop&lt;br /&gt;
** 24PinTech_Policy|Policy&lt;br /&gt;
** Procedures|Work Order Procedures&lt;br /&gt;
** Spiceworks|Spiceworks&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Email_Templates&amp;diff=817</id>
		<title>Email Templates</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Email_Templates&amp;diff=817"/>
		<updated>2019-02-15T15:51:43Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Things To Keep in Mind==&lt;br /&gt;
Please remember to send a courtesy copy of every email '''(CC) to Mr. Chamberlain (bchamberlain@musd20.org) and in addition to your manager's email (currently braydonsanders2001@gmail.com).'''&lt;br /&gt;
Remember to remain professional in every email you send, no matter how difficult the customer.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Always get permission in written form (usually by email) to take apart a device.&lt;br /&gt;
&lt;br /&gt;
==Initial Email==&lt;br /&gt;
Opening email sent to the client after their w/o has been processed:&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I am [your name] from 24PinTech. I am contacting you regarding your [short description of issue].&lt;br /&gt;
&lt;br /&gt;
We are ready to diagnose your device. You may drop your device off during your lunch or sixth hour in room 120.&lt;br /&gt;
&lt;br /&gt;
If possible, please provide a description of your issue and also a description of your device. [optional line]&lt;br /&gt;
&lt;br /&gt;
Respectfully, &lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Reminder Email==&lt;br /&gt;
Reminder email sent to the client after not getting a response for at least 3 business days:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I just wanted to follow up with you about your [insert device here]. If you are still interested in doing business with us, please email me back as soon as possible. If I don’t hear back from you within 2 business days, your work order will be closed. &lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Repair Permission Request==&lt;br /&gt;
Email sent to the client once you’re ready to start working on their device:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I’m ready to start working on your device. Do I have your permission to disassemble your [insert device here] to [insert action here]?&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Closing a Work Order Due to No Responses==&lt;br /&gt;
Sent after 3 business days with no response:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech for your technology needs. We have made several attempts to contact you but did not receive a response. Since we have yet to hear back from you, we must close your work order. If you would like to reopen it, please revisit our website and fill out the support form again. Thank you!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Customer Satisfaction Survey==&lt;br /&gt;
Sent after a successfully closed and completed work order:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech to resolve your issue! We greatly appreciate your business and invite you to take a short customer satisfaction survey to evaluate your recent interaction with our team. Our main priority is customer satisfaction, so we would appreciate your input. We use the survey data to evaluate our technicians and improve all future interactions with 24PinTech.&lt;br /&gt;
&lt;br /&gt;
Your assigned technician was [technician name]. We hope to work with you again!&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Your assigned technicians were [technician names]. We hope to work with you again!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The survey can be found here: http://24pin.tech/survey&lt;br /&gt;
&lt;br /&gt;
Respectfully, &lt;br /&gt;
The 24PinTech Team&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Follow-Up==&lt;br /&gt;
Sent following 1 week after the work order has been closed:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech! We wanted to check in and see how your device is doing. If it isn’t too much trouble, we have two questions for you:&lt;br /&gt;
&lt;br /&gt;
Have you found our work satisfactory?&lt;br /&gt;
Are there any other issues that have come up?&lt;br /&gt;
&lt;br /&gt;
Again, everyone at 24PinTech graciously thanks you and appreciates your business and time!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==When Temporarily Closed==&lt;br /&gt;
Used when we’re temporarily closed for any reason(s):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
24PinTech is currently on a temporary hiatus because of [reason], so we are currently unable to process your request. I will get back to you as soon as we have reopened!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=User:Tgriego&amp;diff=806</id>
		<title>User:Tgriego</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=User:Tgriego&amp;diff=806"/>
		<updated>2019-01-31T20:16:08Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;website subtext templates:&lt;br /&gt;
&lt;br /&gt;
24PinTech is currently closed for training and will re-open within a few weeks. Thank you for understanding and choosing 24PinTech!&lt;br /&gt;
&lt;br /&gt;
==Incomplete Pages (aka the Wall of Shame)==&lt;br /&gt;
Here's a table of all of the &amp;lt;s&amp;gt;embarrassments&amp;lt;/s&amp;gt; incomplete pages on the wiki. Users in '''bold''' mean that the page needs to be reassigned to someone else.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!User&lt;br /&gt;
!Page&lt;br /&gt;
!Created On (d/m/y)&lt;br /&gt;
!Last Edited&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
|amartinez&lt;br /&gt;
|[[D-Link Camera Setup]]&lt;br /&gt;
|31 July 2018&lt;br /&gt;
|31 July 2018&lt;br /&gt;
|incomplete and/or missing content&lt;br /&gt;
|-&lt;br /&gt;
|amartinez&lt;br /&gt;
|[[IFIXIT Repair Guides]]&lt;br /&gt;
|5 March 2018&lt;br /&gt;
|19 March 2018&lt;br /&gt;
|incomplete&lt;br /&gt;
|-&lt;br /&gt;
|bsanders, bchamberlain&lt;br /&gt;
|[[Surface USB/PXE]]&lt;br /&gt;
|18 April 2018&lt;br /&gt;
|24 May 2018&lt;br /&gt;
|lackluster and/or vague&lt;br /&gt;
|-&lt;br /&gt;
|'''bwhitworth'''&lt;br /&gt;
|[[Creating bootable drives]]&lt;br /&gt;
|28 February 2018&lt;br /&gt;
|5 March 2018&lt;br /&gt;
|incomplete&lt;br /&gt;
|-&lt;br /&gt;
|'''dhill'''&lt;br /&gt;
|[[How to Audit the Inventory]]&lt;br /&gt;
|7 December 2017&lt;br /&gt;
|8 December 2017&lt;br /&gt;
|lackluster and/or vague + formatting errors&lt;br /&gt;
|-&lt;br /&gt;
|'''khenderson, sidepanel'''&lt;br /&gt;
|[[Technician Workspace]]&lt;br /&gt;
|12 February 2018&lt;br /&gt;
|3 March 2018&lt;br /&gt;
|lackluster + grammatical errors&lt;br /&gt;
|-&lt;br /&gt;
|'''mdavid'''&lt;br /&gt;
|[[SkillsUSA 2018 (Internetworking)]]&lt;br /&gt;
|5 April 2018&lt;br /&gt;
|5 April 2018&lt;br /&gt;
|incomplete&lt;br /&gt;
|-&lt;br /&gt;
|sidepanel&lt;br /&gt;
|[[24PinKiosk]]&lt;br /&gt;
|5 September 2018&lt;br /&gt;
|6 September 2018&lt;br /&gt;
|needs more content (if possible)&lt;br /&gt;
|-&lt;br /&gt;
|sidepanel&lt;br /&gt;
|[[Common Cisco IOS Issues]]&lt;br /&gt;
|3 March 2018&lt;br /&gt;
|3 March 2018&lt;br /&gt;
|incomplete (?) + Cisco Switch IOS Images section needs context&lt;br /&gt;
|-&lt;br /&gt;
|sgarcia&lt;br /&gt;
|[[Router wont save config]]&lt;br /&gt;
|14 May 2018&lt;br /&gt;
|14 May 2018&lt;br /&gt;
|lackluster (seriously)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;s&amp;gt;tgriego&amp;lt;/s&amp;gt;&lt;br /&gt;
|[[Incomplete Pages|&amp;lt;s&amp;gt;Incomplete Pages&amp;lt;/s&amp;gt;]]&lt;br /&gt;
|&amp;lt;s&amp;gt;21 September 2018&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;21 September 2018&amp;lt;/s&amp;gt;&lt;br /&gt;
|&amp;lt;s&amp;gt;incomplete&amp;lt;/s&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|tgriego&lt;br /&gt;
|[[Forum Management]]&lt;br /&gt;
|30 July 2018&lt;br /&gt;
|2 August 2018&lt;br /&gt;
|incomplete&lt;br /&gt;
|-&lt;br /&gt;
|tgriego&lt;br /&gt;
|[[Logan]]&lt;br /&gt;
|8 March 2018&lt;br /&gt;
|17 May 2018&lt;br /&gt;
|incomplete and/or vague&lt;br /&gt;
|-&lt;br /&gt;
|tgriego&lt;br /&gt;
|[[Loki]]&lt;br /&gt;
|16 May 2018&lt;br /&gt;
|16 May 2018&lt;br /&gt;
|incomplete (what?)&lt;br /&gt;
|-&lt;br /&gt;
|tgriego&lt;br /&gt;
|[[WordPress]]&lt;br /&gt;
|9 May 2018&lt;br /&gt;
|9 May 2018&lt;br /&gt;
|incomplete&lt;br /&gt;
|-&lt;br /&gt;
|'''zkal&amp;lt;bdi&amp;gt;nasy&amp;lt;/bdi&amp;gt;'''&lt;br /&gt;
|[[24PinTech Policy]]&lt;br /&gt;
|4 May 2018&lt;br /&gt;
|31 July 2018&lt;br /&gt;
|could use improvement&lt;br /&gt;
|}&lt;br /&gt;
==About==&lt;br /&gt;
Hi. I'm Tyler and I like full-stack web development and cybersecurity. I also like making things look nice.&lt;br /&gt;
 to-do list (last updated 29 Nov. 2018)&lt;br /&gt;
&lt;br /&gt;
'''General'''&lt;br /&gt;
&lt;br /&gt;
*'''Create a page honoring the previous years technicians'''&lt;br /&gt;
**Get the list of students/certs they had&lt;br /&gt;
*''Find out how to convince more people to use the forum''&lt;br /&gt;
*&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
'''Wiki'''&lt;br /&gt;
&lt;br /&gt;
*''Edit the insufficient/lacking articles''&lt;br /&gt;
*''Propose edited email templates''&lt;br /&gt;
*Extensive Guide to Email Writing&lt;br /&gt;
*Good Customer Support Practices&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Welcome_to_the_24PinTech_Wiki!&amp;diff=805</id>
		<title>Welcome to the 24PinTech Wiki!</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Welcome_to_the_24PinTech_Wiki!&amp;diff=805"/>
		<updated>2018-12-19T20:14:57Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Logo-extended.jpg|733x188px|center]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
==Who are we?==&lt;br /&gt;
The 24PinTech team consists of a group of students all currently attending Maricopa High School. We are all extremely enthusiastic about all things technological based, which prompted us to create the company. The company will allow students to be able to gain experience in Information Technology, thus preparing them for future careers within the technology industry. As part of the training program, employees will be certified in various courses, including but not limited to, the A+ Certificate, CCNA certification and multiple TestOut Course certifications. We also partner with [https://www.azstrut.org/ AZStRUT] to help them repair old computers which will be given back out, giving employees great hands-on hardware repair and software diagnosis experience.&lt;br /&gt;
&lt;br /&gt;
[https://youtu.be/LWSuHAxm-n8 24PinTech Commercial]&lt;br /&gt;
&lt;br /&gt;
==What do we do?==&lt;br /&gt;
Computer Service Technicians assets, repair, and maintain computers for companies, businesses, or consumers.&lt;br /&gt;
&lt;br /&gt;
==What are our obligations?==&lt;br /&gt;
Service Technicians are responsible for installing and repairing internal and external components, implementing proper security settings and programs, installing operating systems and software, making a system’s performance efficient and smooth, and helping customers better understand how to maintain their system(s).&lt;br /&gt;
&lt;br /&gt;
==What are our skills?==&lt;br /&gt;
&lt;br /&gt;
*'''Analytical Skills:''' Computer repair technicians need to be able to solve issues that might not have a clear solution. Being able to experiment and use trial and error is important.&lt;br /&gt;
*'''Troubleshooting:''' Computer repair technicians must be able to diagnose, repair and test computer problems as they arise&lt;br /&gt;
*'''Communication:''' Computer repair technicians have to ask questions and listen to customers in order to find out the issue, explain the problem in a clear and understandable way, and give them options for repair or replacement.&lt;br /&gt;
*'''IT Skills:''' Using diagnostic tools to assess or monitor computer systems requires knowledge of IT skills.&lt;br /&gt;
*'''Dexterity:''' Computer repair technicians use their hands to manipulate objects within the computer.&lt;br /&gt;
&lt;br /&gt;
==Social Media Stuff!==&lt;br /&gt;
&lt;br /&gt;
*'''Website:''' [http://24pin.tech/ 24pin.tech]&lt;br /&gt;
*'''Twitter:''' [https://twitter.com/ @24PinTech]&lt;br /&gt;
*'''Instagram:''' [https://www.instagram.com/24pintech/ @24pintech]&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=804</id>
		<title>WordPress</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=804"/>
		<updated>2018-12-19T16:17:28Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
[[File:Wp-admin.png|thumb|screenshot of the WordPress admin dashboard]]&lt;br /&gt;
[https://wordpress.org/ WordPress] is a content management system (CMS) that is functions primarily serve our [http://24pin.tech/ homepage] to users that would like to get help or discover more about the program. It's a very powerful platform that grants administrators creative freedom over whatever they want on their website.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation for WordPress is really simple. All you have to do is download the compressed file for the installation and extract it in the directory that you'd want to install it to. You can either download it from their [https://wordpress.org/download/ website here] or alternatively you can download it using &amp;lt;code&amp;gt;wget&amp;lt;/code&amp;gt;. The command would be &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://wordpress.org/latest.tar.gz&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; on UNIX systems (if you're using aptitude for your package manager.) Once you've downloaded the file, run &amp;lt;code&amp;gt;tar -xzvf latest.tar.gz&amp;lt;/code&amp;gt; to extract it.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once you've downloaded and extracted the file, visit your web server to continue with the installation process. The rest of the instructions are on the page of the web installer. &lt;br /&gt;
&lt;br /&gt;
==Management==&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=803</id>
		<title>WordPress</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=803"/>
		<updated>2018-12-18T20:28:57Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
[[File:Wp-admin.png|thumb|screenshot of the WordPress admin dashboard]]&lt;br /&gt;
[https://wordpress.org/ WordPress] is a content management system (CMS) that is functions primarily serve our [http://24pin.tech/ homepage] to users that would like to get help or discover more about the program. It's a very powerful platform that grants administrators creative freedom over whatever they want on their website.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
The installation for WordPress is really simple. All you have to do is download the compressed file for the installation and extract it in the directory that you'd want to install it to. You can either download it from their [https://wordpress.org/download/ website here] or alternatively you can download it using &amp;lt;code&amp;gt;wget&amp;lt;/code&amp;gt;. The command would be &amp;lt;code&amp;gt;wget &amp;lt;nowiki&amp;gt;https://wordpress.org/latest.tar.gz&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; on UNIX systems (if you're using aptitude for your package manager.) Once you've downloaded the file, run &amp;lt;code&amp;gt;tar -xzvf latest.tar.gz&amp;lt;/code&amp;gt; to extract it.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
Once you've downloaded and extracted the file, visit your web server to continue with the installation process. &lt;br /&gt;
&lt;br /&gt;
==Management==&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:Wp-admin.png&amp;diff=802</id>
		<title>File:Wp-admin.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:Wp-admin.png&amp;diff=802"/>
		<updated>2018-12-18T19:56:02Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;screenshot of the wordpress dashboard&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Email_Templates&amp;diff=801</id>
		<title>Email Templates</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Email_Templates&amp;diff=801"/>
		<updated>2018-12-18T19:49:30Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Things To Keep in Mind==&lt;br /&gt;
Please remember to send a courtesy copy of every email '''(CC) to Mr. Chamberlain (bchamberlain@musd20.org) and in addition to your manager's email (currently lucascdial@gmail.com).'''&lt;br /&gt;
Remember to remain professional in every email you send, no matter how difficult the customer.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Always get permission in written form (usually by email) to take apart a device.&lt;br /&gt;
&lt;br /&gt;
==Initial Email==&lt;br /&gt;
Opening email sent to the client after their w/o has been processed:&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I am [your name] from 24PinTech. I am contacting you on behalf of [short description of issue].&lt;br /&gt;
&lt;br /&gt;
We are ready to diagnose your device. You may drop your device off during your lunch or sixth hour in room 120.&lt;br /&gt;
&lt;br /&gt;
If possible, please provide a description of your issue and also a description of your device. [optional line]&lt;br /&gt;
&lt;br /&gt;
Respectfully, &lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Reminder Email==&lt;br /&gt;
Reminder email sent to the client after not getting a response for at least 3 business days:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I just wanted to follow up with you about your [insert device here]. If you are still interested in doing business with us, please email me back as soon as possible. If I don’t hear back from you within 2 business days, your work order will be closed. &lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Repair Permission Request==&lt;br /&gt;
Email sent to the client once you’re ready to start working on their device:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I’m ready to start working on your device. Do I have your permission to disassemble your [insert device here] to [insert action here]?&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Closing a Work Order Due to No Responses==&lt;br /&gt;
Sent after 3 business days with no response:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech for your technology needs. We have made several attempts to contact you but did not receive a response. Since we have yet to hear back from you, we must close your work order. If you would like to reopen it, please revisit our website and fill out the support form again. Thank you!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Customer Satisfaction Survey==&lt;br /&gt;
Sent after a successfully closed and completed work order:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech to resolve your issue! We greatly appreciate your business and invite you to take a short customer satisfaction survey to evaluate your recent interaction with our team. Our main priority is customer satisfaction, so we would appreciate your input. We use the survey data to evaluate our technicians and improve all future interactions with 24PinTech.&lt;br /&gt;
&lt;br /&gt;
Your assigned technician was [technician name]. We hope to work with you again!&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Your assigned technicians were [technician names]. We hope to work with you again!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The survey can be found here: http://24pin.tech/survey&lt;br /&gt;
&lt;br /&gt;
Respectfully, &lt;br /&gt;
The 24PinTech Team&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Follow-Up==&lt;br /&gt;
Sent following 1 week after the work order has been closed:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech! We wanted to check in and see how your device is doing. If it isn’t too much trouble, we have two questions for you:&lt;br /&gt;
&lt;br /&gt;
Have you found our work satisfactory?&lt;br /&gt;
Are there any other issues that have come up?&lt;br /&gt;
&lt;br /&gt;
Again, everyone at 24PinTech graciously thanks you and appreciates your business and time!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==When Temporarily Closed==&lt;br /&gt;
Used when we’re temporarily closed for any reason(s):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
24PinTech is currently on a temporary hiatus because of [reason], so we are currently unable to process your request. I will get back to you as soon as we have reopened!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Email_Templates&amp;diff=800</id>
		<title>Email Templates</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Email_Templates&amp;diff=800"/>
		<updated>2018-12-18T19:48:39Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Things To Keep in Mind==&lt;br /&gt;
Please remember to send a courtesy copy of every email '''(CC) to Mr. Chamberlain (bchamberlain@musd20.org) and in addition to your manager's email (currently lucascdial@gmail.com).'''&lt;br /&gt;
Remember to remain professional in every email you send, no matter how difficult the customer.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Always get permission in written form (usually by email) to take apart a device.&lt;br /&gt;
&lt;br /&gt;
==Initial Email==&lt;br /&gt;
Opening email sent to the client after their w/o has been processed:&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I am [your name] from 24PinTech. I am contacting you on behalf of [short description of issue].&lt;br /&gt;
&lt;br /&gt;
We are ready to diagnose your device. You may drop your device off during your lunch or sixth hour in room 120.&lt;br /&gt;
&lt;br /&gt;
If possible, please provide a description of your issue and also a description of your device. [optional line]&lt;br /&gt;
&lt;br /&gt;
Respectfully, &lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Reminder Email==&lt;br /&gt;
Reminder email sent to the client after not getting a response for at least 3 business days:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I just wanted to follow up with you about your [insert device here]. If you are still interested in doing business with us, please email me back as soon as possible. If I don’t hear back from you within 2 business days, your work order will be closed. &lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Repair Permission Request==&lt;br /&gt;
Email sent to the client once you’re ready to start working on their device:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
I’m ready to start working on your device. Do I have your permission to disassemble your [insert device here] to [insert action here]?&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Closing a Work Order Due to No Responses==&lt;br /&gt;
Sent after 3 business days with no response:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech for your technology needs. We have made several attempts to contact you but did not receive a response. Since we have yet to hear back from you, we must close your work order. If you would like to reopen it, please revisit our website and fill out the support form again. Thank you!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Customer Satisfaction Survey==&lt;br /&gt;
Sent after a successfully closed and completed work order:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech to resolve your issue! We greatly appreciate your business and invite you to take a short customer satisfaction survey to evaluate your recent interaction with our team. Our main priority is customer satisfaction, so we would appreciate your input. We use the survey data to evaluate our technicians and improve all future interactions with 24PinTech.&lt;br /&gt;
&lt;br /&gt;
Your assigned technician was [technician name]. We hope to work with you again!&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Your assigned technicians were [technician names]. We hope to work with you again!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The survey can be found here: http://24pin.tech/survey&lt;br /&gt;
&lt;br /&gt;
Respectfully, &lt;br /&gt;
The 24PinTech Team&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Follow-Up==&lt;br /&gt;
Sent following 1 week after the work order has been closed:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
Thank you for choosing 24PinTech! We wanted to check in and see how your device is doing. If it isn’t too much trouble, we have two questions for you:&lt;br /&gt;
&lt;br /&gt;
Have you found our work satisfactory?&lt;br /&gt;
Are there any other issues that have come up?&lt;br /&gt;
&lt;br /&gt;
Again, everyone at 24PinTech graciously thanks you and appreciates your business and time!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==When Temporarily Closed==&lt;br /&gt;
Used when we’re temporarily closed for any reason(s):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Hello [client name]!&lt;br /&gt;
&lt;br /&gt;
24PinTech is currently on a temporary hiatus because of [reason], so we are currently unable to process your request. I will get back to you as soon as we have reopened!&lt;br /&gt;
&lt;br /&gt;
Respectfully,&lt;br /&gt;
[your name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=799</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=799"/>
		<updated>2018-12-17T16:26:05Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&lt;br /&gt;
 wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
 $wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
 $wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
 $wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
      &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;&amp;lt;nowiki&amp;gt;http://localhost:8000&amp;lt;/nowiki&amp;gt;&amp;quot;,&lt;br /&gt;
      &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
      &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
 );&lt;br /&gt;
For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 406===&lt;br /&gt;
I'm not sure why this happens, but navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/lib/config&amp;lt;/code&amp;gt; and run &amp;lt;code&amp;gt;sudo vim ParsoidConfig.js&amp;lt;/code&amp;gt; and change the following line from true to false:&amp;lt;pre&amp;gt;&lt;br /&gt;
ParsoidConfig.prototype.strictAcceptCheck = false;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Alternatively, you can add the following to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/config.yaml&amp;lt;/code&amp;gt; above the line that reads &amp;lt;code&amp;gt;mwApis:&amp;lt;/code&amp;gt;:&lt;br /&gt;
 strictAcceptCheck: false&lt;br /&gt;
&lt;br /&gt;
===Other===&lt;br /&gt;
If you're getting other errors, try doing the following:&lt;br /&gt;
&lt;br /&gt;
*Restart the Parsoid service (if you've installed Parsoid through aptitude)&lt;br /&gt;
**&amp;lt;code&amp;gt;sudo systemctl restart parsoid&amp;lt;/code&amp;gt;&lt;br /&gt;
*Check your configuration&lt;br /&gt;
**Verify that the uri/api url are correct in &amp;lt;code&amp;gt;config.yaml&amp;lt;/code&amp;gt;&lt;br /&gt;
*[[mediawikiwiki:Parsoid/Troubleshooting#Check_that_your_localhost_interwiki_is_set_up_correctly|Make sure that your API url is accessible and functioning properly]]&lt;br /&gt;
*Are you using the Parsoid package?&lt;br /&gt;
**Try using the [[mediawikiwiki:Parsoid/Developer_Setup|developer build]]&lt;br /&gt;
*The other steps found on [[mediawikiwiki:Parsoid/Troubleshooting|this article]]&lt;br /&gt;
*&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=798</id>
		<title>WordPress</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=WordPress&amp;diff=798"/>
		<updated>2018-12-17T16:21:04Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
== Management ==&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=797</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=797"/>
		<updated>2018-12-17T16:12:55Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&lt;br /&gt;
 wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
 $wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
 $wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
 $wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
      &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;&amp;lt;nowiki&amp;gt;http://localhost:8000&amp;lt;/nowiki&amp;gt;&amp;quot;,&lt;br /&gt;
      &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
      &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
 );&lt;br /&gt;
For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 406===&lt;br /&gt;
I'm not sure why this happens, but navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/lib/config&amp;lt;/code&amp;gt; and run &amp;lt;code&amp;gt;sudo vim ParsoidConfig.js&amp;lt;/code&amp;gt; and change the following line from true to false:&amp;lt;pre&amp;gt;&lt;br /&gt;
ParsoidConfig.prototype.strictAcceptCheck = false;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Alternatively, you can add the following to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/config.yaml&amp;lt;/code&amp;gt; above the line that reads &amp;lt;code&amp;gt;mwApis:&amp;lt;/code&amp;gt;:&amp;lt;pre&amp;gt;&lt;br /&gt;
strictAcceptCheck: false&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Other===&lt;br /&gt;
If you're getting other errors, try doing the following:&lt;br /&gt;
&lt;br /&gt;
*Restart the Parsoid service (if you've installed Parsoid through aptitude)&lt;br /&gt;
**&amp;lt;code&amp;gt;sudo systemctl restart parsoid&amp;lt;/code&amp;gt;&lt;br /&gt;
*Check your configuration&lt;br /&gt;
**Verify that the uri/api url are correct in &amp;lt;code&amp;gt;config.yaml&amp;lt;/code&amp;gt;&lt;br /&gt;
*[[mediawikiwiki:Parsoid/Troubleshooting#Check_that_your_localhost_interwiki_is_set_up_correctly|Make sure that your API url is accessible and functioning properly]]&lt;br /&gt;
*Are you using the Parsoid package?&lt;br /&gt;
**Try using the [[mediawikiwiki:Parsoid/Developer_Setup|developer build]]&lt;br /&gt;
*The other steps found on [[mediawikiwiki:Parsoid/Troubleshooting|this article]]&lt;br /&gt;
*&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=796</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=796"/>
		<updated>2018-12-17T16:12:29Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
$wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
$wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
     &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;http://localhost:8000&amp;quot;,&lt;br /&gt;
     &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
     &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 406===&lt;br /&gt;
I'm not sure why this happens, but navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/lib/config&amp;lt;/code&amp;gt; and run &amp;lt;code&amp;gt;sudo vim ParsoidConfig.js&amp;lt;/code&amp;gt; and change the following line from true to false:&amp;lt;pre&amp;gt;&lt;br /&gt;
ParsoidConfig.prototype.strictAcceptCheck = false;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Alternatively, you can add the following to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/config.yaml&amp;lt;/code&amp;gt; above the line that reads &amp;lt;code&amp;gt;mwApis:&amp;lt;/code&amp;gt;:&amp;lt;pre&amp;gt;&lt;br /&gt;
strictAcceptCheck: false&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Other===&lt;br /&gt;
If you're getting other errors, try doing the following:&lt;br /&gt;
&lt;br /&gt;
*Restart the Parsoid service (if you've installed Parsoid through aptitude)&lt;br /&gt;
**&amp;lt;code&amp;gt;sudo systemctl restart parsoid&amp;lt;/code&amp;gt;&lt;br /&gt;
*Check your configuration&lt;br /&gt;
**Verify that the uri/api url are correct in &amp;lt;code&amp;gt;config.yaml&amp;lt;/code&amp;gt;&lt;br /&gt;
*[[mediawikiwiki:Parsoid/Troubleshooting#Check_that_your_localhost_interwiki_is_set_up_correctly|Make sure that your API url is accessible and functioning properly]]&lt;br /&gt;
*Are you using the Parsoid package?&lt;br /&gt;
**Try using the [[mediawikiwiki:Parsoid/Developer_Setup|developer build]]&lt;br /&gt;
* The other steps found on [[mediawikiwiki:Parsoid/Troubleshooting|this article]]&lt;br /&gt;
*&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=795</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=795"/>
		<updated>2018-12-17T16:10:05Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
$wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
$wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
     &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;http://localhost:8000&amp;quot;,&lt;br /&gt;
     &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
     &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 406===&lt;br /&gt;
I'm not sure why this happens, but navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/lib/config&amp;lt;/code&amp;gt; and run &amp;lt;code&amp;gt;sudo vim ParsoidConfig.js&amp;lt;/code&amp;gt; and change the following line from true to false:&amp;lt;pre&amp;gt;&lt;br /&gt;
ParsoidConfig.prototype.strictAcceptCheck = false;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Alternatively, you can add the following to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/config.yaml&amp;lt;/code&amp;gt; above the line that reads &amp;lt;code&amp;gt;mwApis:&amp;lt;/code&amp;gt;:&amp;lt;pre&amp;gt;&lt;br /&gt;
strictAcceptCheck: false&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
If you're getting other errors, try doing the following:&lt;br /&gt;
&lt;br /&gt;
* Restart the Parsoid service (if you've installed Parsoid through aptitude)&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo systemctl restart parsoid&amp;lt;/code&amp;gt;&lt;br /&gt;
* Check your configuration&lt;br /&gt;
** Verify that the uri/api url are correct in &amp;lt;code&amp;gt;config.yaml&amp;lt;/code&amp;gt;&lt;br /&gt;
*&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=794</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=794"/>
		<updated>2018-12-17T16:06:31Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
$wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
$wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
     &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;http://localhost:8000&amp;quot;,&lt;br /&gt;
     &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
     &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;br /&gt;
&lt;br /&gt;
=== HTTP Error 406 ===&lt;br /&gt;
I'm not sure why this happens, but navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/lib/config&amp;lt;/code&amp;gt; and run &amp;lt;code&amp;gt;sudo vim ParsoidConfig.js&amp;lt;/code&amp;gt; and change the following line from true to false:&amp;lt;pre&amp;gt;&lt;br /&gt;
ParsoidConfig.prototype.strictAcceptCheck = false;&lt;br /&gt;
&amp;lt;/pre&amp;gt;Alternatively, you can add the following to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid/config.yaml&amp;lt;/code&amp;gt; above the line that reads &amp;lt;code&amp;gt;mwApis:&amp;lt;/code&amp;gt;:&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=793</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=793"/>
		<updated>2018-12-17T16:02:27Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
$wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
$wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
     &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;http://localhost:8000&amp;quot;,&lt;br /&gt;
     &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
     &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=792</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=792"/>
		<updated>2018-12-17T16:02:07Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
$wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
$wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
     &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;http://localhost:8000&amp;quot;,&lt;br /&gt;
     &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
     &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&amp;lt;pre&amp;gt;&lt;br /&gt;
$wgSessionsInObjectCache = true;&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;][&amp;quot;forwardCookies&amp;quot;] = true;&lt;br /&gt;
&amp;lt;/pre&amp;gt;''Note: Please be aware that there are security implications by sending cookie headers to Parsoid over HTTP.''&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=791</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=791"/>
		<updated>2018-12-17T15:59:41Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;Modify the value of the uri to properly point to your wiki's API file, and then the domain to match the domain. Make sure that the uri and domain match, so for instance if you use &amp;lt;code&amp;gt;localhost&amp;lt;/code&amp;gt; in the uri, make sure that you use it in the domain as well. Next, you'll want to configure &amp;lt;code&amp;gt;LocalSettings.php&amp;lt;/code&amp;gt; for MediaWiki. Navigate to your wiki's root directory and then run &amp;lt;code&amp;gt;sudo vim LocalSettings.php&amp;lt;/code&amp;gt;. At the bottom, add the following:&amp;lt;pre&amp;gt;&lt;br /&gt;
wfLoadExtension(&amp;quot;VisualEditor&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
$wgDefaultUserOptions[&amp;quot;visualeditor-enable&amp;quot;] = 1;&lt;br /&gt;
$wgHiddenPrefs[] = &amp;quot;visualeditor-enable&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$wgVirtualRestConfig[&amp;quot;modules&amp;quot;][&amp;quot;parsoid&amp;quot;] = array(&lt;br /&gt;
     &amp;quot;url&amp;quot; =&amp;gt; &amp;quot;http://localhost:8000&amp;quot;,&lt;br /&gt;
     &amp;quot;domain&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;,&lt;br /&gt;
     &amp;quot;prefix&amp;quot; =&amp;gt; &amp;quot;localhost&amp;quot;&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/pre&amp;gt;For our wiki's configuration, we replaced localhost with the IP on the &amp;lt;code&amp;gt;eth0&amp;lt;/code&amp;gt; interface. This can be checked by running &amp;lt;code&amp;gt;ifconfig eth0&amp;lt;/code&amp;gt;. If you're running a private wiki, add this to the bottom of your configuration as well:&lt;br /&gt;
 $wgSessionsInObjectCache = true;&lt;br /&gt;
&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]].&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
===HTTP Error 500===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=790</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=790"/>
		<updated>2018-12-17T15:51:57Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2]. You can install it by running &amp;lt;code&amp;gt;sudo npm install pm2 -g&amp;lt;/code&amp;gt;. npm (node package manager) should come pre-installed with node.js and is used to install packages for node.js. Once you've installed PM2, navigate to &amp;lt;code&amp;gt;/etc/mediawiki/parsoid&amp;lt;/code&amp;gt; and run the command &amp;lt;code&amp;gt;sudo pm2 start npm -- start&amp;lt;/code&amp;gt;. This should start an instance of Parsoid in the background, and you can check if it's there by running &amp;lt;code&amp;gt;sudo pm2 list&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
[[File:Pm2 list.png|left|frameless|851x851px]]&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
Parsoid can be a pain if it isn't working, so here are a few things that you can try if Parsoid is throwing some errors:&lt;br /&gt;
&lt;br /&gt;
=== HTTP Error 500 ===&lt;br /&gt;
This happens when you don't have cURL installed. It can be fixed by running &amp;lt;code&amp;gt;sudo apt-get install php7.2-curl&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;sudo systemctl restart php7.2-fpm&amp;lt;/code&amp;gt;. If you aren't running PHP 7.2, then change the version number in the packages to accommodate your current configuration.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:Pm2_list.png&amp;diff=789</id>
		<title>File:Pm2 list.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:Pm2_list.png&amp;diff=789"/>
		<updated>2018-12-17T15:46:44Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;results from pm2 list&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=788</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=788"/>
		<updated>2018-12-14T20:19:09Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Configuration==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==PM2==&lt;br /&gt;
In order to run the developer setup of Parsoid headless and in the background, you'll want to use [https://www.npmjs.com/package/pm2 PM2] &lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=787</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=787"/>
		<updated>2018-12-13T16:23:11Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Parsoid is the back-end for VisualEditor (VE). Essentially, it takes the HTML contents from VE and parses it into wikitext, which is the syntax that MediaWiki uses to display pages. It runs off of node.js and can be installed as a service from a package through &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;, but I've only been able to get it to work when using the running developer setup through PM2.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
This part has already been documented on the MediaWiki website. If you want to install it traditionally, [[mediawikiwiki:Parsoid/Setup|click here]], but if you'd like to install a developer setup, [[mediawikiwiki:Parsoid/Developer_Setup|click here]]. I basically followed the same process for the developer setup, but I'll still document what was completed.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
First, you'll want to install node.js and git by running &amp;lt;code&amp;gt;sudo apt-get install nodejs git&amp;lt;/code&amp;gt;. Verify that it's been installed by running &amp;lt;code&amp;gt;node --version&amp;lt;/code&amp;gt; and then &amp;lt;code&amp;gt;git --version&amp;lt;/code&amp;gt;. Next, create and navigate to &amp;lt;code&amp;gt;/etc/mediawiki/&amp;lt;/code&amp;gt; by running &amp;lt;code&amp;gt;sudo mkdir /etc/mediawiki &amp;amp;&amp;amp; cd /etc/mediawiki&amp;lt;/code&amp;gt;. Once you're ready to pull the contents from the Parsoid git directory, run &amp;lt;code&amp;gt;sudo git clone &amp;lt;nowiki&amp;gt;https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; and wait for the download to finish. Move into the newly created &amp;lt;code&amp;gt;parsoid&amp;lt;/code&amp;gt; directory by running &amp;lt;code&amp;gt;cd parsoid&amp;lt;/code&amp;gt;, and then completing the install by running &amp;lt;code&amp;gt;sudo npm install&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
In order to create and then edit the configuration file, run &amp;lt;code&amp;gt;sudo cp config.example.yaml config.yaml &amp;amp;&amp;amp; sudo vim config.yaml&amp;lt;/code&amp;gt;. In there, you'll see something that looks like this:&amp;lt;pre&amp;gt;&lt;br /&gt;
        mwApis:&lt;br /&gt;
        - # This is the only required parameter, the URL of you MediaWiki API endpoint.&lt;br /&gt;
          uri: 'http://localhost/w/api.php'&lt;br /&gt;
          # The &amp;quot;domain&amp;quot; is used for communication with Visual Editor and RESTBase.&lt;br /&gt;
          # It defaults to the hostname portion of the `uri` property below, but you can manually set it to an arbitrary string.&lt;br /&gt;
          domain: 'localhost'  # optional&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PM2 ==&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=786</id>
		<title>Parsoid (Deprecated)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Parsoid_(Deprecated)&amp;diff=786"/>
		<updated>2018-12-12T15:55:27Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: Created page with &amp;quot;== Introduction == Parsoid is the back-end for VisualEditor, and all it does is take the WikiText (&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
Parsoid is the back-end for VisualEditor, and all it does is take the WikiText (&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Wiki_Management&amp;diff=785</id>
		<title>Wiki Management</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Wiki_Management&amp;diff=785"/>
		<updated>2018-12-11T16:30:06Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: more&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Managing the Wiki is pretty straightforward. This article is only for the specific tasks that you might find yourself doing as a webmaster. Anything else that you'd need to do for the Wiki can easily be found on Google, as the MediaWiki foundation has thoroughly documented their everything that you could possibly need to know. Because of this, this page is probably going to end up being pretty short.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
[[File:Create account.png|left|thumb|screenshot of Special:CreateAccount]]&lt;br /&gt;
&lt;br /&gt;
==Creating Users==&lt;br /&gt;
To create an account, go to the [[Special:CreateAccount|Create account]] page listed under [[Special:SpecialPages|Special Pages]]. If the page doesn't show, it's because your account does not have the proper role (bureaucrat). Refer to the next section to learn how to do this.&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
When you're creating an account, make sure that you check &amp;lt;code&amp;gt;Use a temporary random password and send it to the specified email address&amp;lt;/code&amp;gt;. This lets the user set their own password without having to do it at your workstation, and they also are entering their email address in so that in the event that they forget their password they can reset it. If you're not using the &amp;lt;code&amp;gt;first initial + last name&amp;lt;/code&amp;gt; format for usernames, putting their real name in the &amp;lt;code&amp;gt;Real name&amp;lt;/code&amp;gt; field is a good idea.&lt;br /&gt;
[[File:User rights.png|thumb|screenshot of Special:UserRights]]&lt;br /&gt;
&lt;br /&gt;
==Assigning Roles==&lt;br /&gt;
Just like creating an account, assigning roles is also easy. Navigate to the [[Special:UserRights|User rights]] page, enter a username, and assign the roles that you'd like that person to have. This will not work if your account doesn't have the bureaucrat role.&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:User_rights.png&amp;diff=784</id>
		<title>File:User rights.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:User_rights.png&amp;diff=784"/>
		<updated>2018-12-11T16:27:38Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Special:UserRights&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Wiki_Management&amp;diff=783</id>
		<title>Wiki Management</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Wiki_Management&amp;diff=783"/>
		<updated>2018-12-11T16:25:29Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: more&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
Managing the Wiki is pretty straightforward. This article is only for the specific tasks that you might find yourself doing as a webmaster. Anything else that you'd need to do for the Wiki can easily be found on Google, as the MediaWiki foundation has thoroughly documented their everything that you could possibly need to know. Because of this, this page is probably going to end up being pretty short.&lt;br /&gt;
&lt;br /&gt;
[[File:Create account.png|left|thumb]]&lt;br /&gt;
&lt;br /&gt;
== Creating Users ==&lt;br /&gt;
To create an account, go to the [[Special:CreateAccount|&amp;quot;Create account&amp;quot;]] page listed under [[Special:SpecialPages|Special Pages]]. If the page doesn't show, it's because your account does not have the proper role (bureaucrat). Refer to the next section to learn how to do this.&lt;br /&gt;
&lt;br /&gt;
When you're creating an account, make sure that you check &amp;lt;code&amp;gt;Use a temporary random password and send it to the specified email address&amp;lt;/code&amp;gt;. This lets the user set their own password without having to do it at your workstation, and they also are entering their email address in so that in the event that they forget their password they can reset it. If you're not using the &amp;lt;code&amp;gt;first initial + last name&amp;lt;/code&amp;gt; format for usernames, putting their real name in the &amp;lt;code&amp;gt;Real name&amp;lt;/code&amp;gt; field is a good idea.&lt;br /&gt;
&lt;br /&gt;
== Assigning Roles ==&lt;br /&gt;
a&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=File:Create_account.png&amp;diff=782</id>
		<title>File:Create account.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=File:Create_account.png&amp;diff=782"/>
		<updated>2018-12-11T16:22:39Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Special:CreateAccount&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=Logan_(Retired)&amp;diff=780</id>
		<title>Logan (Retired)</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=Logan_(Retired)&amp;diff=780"/>
		<updated>2018-12-07T16:10:06Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== General Overview ==&lt;br /&gt;
Logan (10.21.25.11) 1 out of 2 of the Dell PowerEdge R430's that we have in Mr. Chamberlain's room. It primarily functions as a print server, BDC (backup domain controller, a host for our DHCP/DNS backups, and a WAMP (Apache) server.&lt;br /&gt;
&lt;br /&gt;
== Startup ==&lt;br /&gt;
There is currently only 1 file in the startup folder which is a visual basic script to start up the Parsoid server. The code for that can be seen as follows:&amp;lt;pre&amp;gt;&lt;br /&gt;
set w = CreateObject(&amp;quot;WScript.Shell&amp;quot;)&lt;br /&gt;
w.Run chr(34) &amp;amp; &amp;quot;C:\Program Files\nodejs\parsoid\parsoid.bat&amp;quot; &amp;amp; chr(34), 0&lt;br /&gt;
set w = Nothing&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Print Services ==&lt;br /&gt;
There are currently 2 active print servers on Logan: one for the &amp;lt;code&amp;gt;Brother HL-4570CDW&amp;lt;/code&amp;gt; printer, and one for the &amp;lt;code&amp;gt;HP LaserJet P4014 UPD PCL 6&amp;lt;/code&amp;gt; printer.&lt;br /&gt;
&lt;br /&gt;
[[File:Logan_PrintAllPrinters.png]]&lt;br /&gt;
&lt;br /&gt;
Below is the advanced configuration page for both of the main printers.&lt;br /&gt;
&lt;br /&gt;
[[File:Printers-advanced_logan.png|frameless|600x600px]]&lt;br /&gt;
== Backup Domain Controller ==&lt;br /&gt;
Logan is also a backup domain controller for Loki. Its current production configuration can be seen below.&lt;br /&gt;
&lt;br /&gt;
[[File:Logan_ForwardLookupZones.png]]&lt;br /&gt;
&lt;br /&gt;
==WAMP Stack (Apache Server) ==&lt;br /&gt;
Everything you need to know about our web server can be found on the [http://wiki.24pin.tech/index.php/Apache Apache] page. It covers everything ranging from installation to configuration, and covers the basics to troubleshooting.&lt;br /&gt;
&lt;br /&gt;
== DHCP ==&lt;br /&gt;
Logan runs as a backup DHCP server. The configuration for it can be seen below:&lt;br /&gt;
&lt;br /&gt;
== DNS ==&lt;br /&gt;
aa&lt;br /&gt;
&lt;br /&gt;
== IDRAC ==&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
	<entry>
		<id>https://wiki.24pin.tech/index.php?title=User:Mdavid&amp;diff=778</id>
		<title>User:Mdavid</title>
		<link rel="alternate" type="text/html" href="https://wiki.24pin.tech/index.php?title=User:Mdavid&amp;diff=778"/>
		<updated>2018-12-03T05:52:05Z</updated>

		<summary type="html">&lt;p&gt;Tgriego: sorry bud, &amp;quot;24 Pin Tech&amp;quot; bothered me + it said all of your contractions had typos but they didn't? anyways fixed it. miss ya marquell&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;='''End of the Year Summary 2017-2018'''=&lt;br /&gt;
==Introduction==&lt;br /&gt;
From the perspective of a student, this class was really interesting and really worth the experience. This was my first year in both Computer Maintenance and 24PinTech, and I truly enjoyed it. I joined the business blind and not sure what to expect. In fact, I originally registered for Networking II, but there were very few of us to make it an official class. As such, I was randomly placed into Computer Maintenance. Hardware has never been my specialty, so I was very hesitant about how I can contribute to 24PinTech in the first place. I wasn't sure how my networking skills would apply to the business, so I aimed to learn more about hardware in order to be useful. However, I’m glad that I was given the opportunity to work towards certifications through the TestOut program, in which I have obtained Switching Pro during the time in which this summary was written.&lt;br /&gt;
&lt;br /&gt;
==My Role in 24PinTech==&lt;br /&gt;
Going into 24PinTech, I was nothing more than a help desk employee. Reece Thompson took the manager at the time and he did of course train me as far as procedures and Spiceworks goes. In the beginning, I wasn't sure how I would be useful in which I feared. Unlike everyone else, I didn't have a background in technology, until I joined ITE my sophomore year. As such, my skills were quite slim and were limited to networking and some aspects of software. I already knew that a majority of the work orders that would come in would be related to hardware; I was never really good with using tools and fixing screens.&lt;br /&gt;
&lt;br /&gt;
From August to mid-September, my role as an employee was almost worthless, as I have yet to acquire the skills I need. However, I still took the time to do research and learn how to do certain things. As such, spent my lunch hour in the classroom in addition to my TA hour. Customers would come during the lunch hours, and since Reece trained me how to use Spiceworks, I ended up being the receiving employee and had them sign their contracts whenever he wasn't here himself. At the time, I didn't have admin rights and couldn't assign work orders, but I did attach post-it notes to the received devices with the customers name, the device, when it came in, and the customer’s contact info. Both Reece and Mr. Chamberlain took note of this one day. Reece thought that I was a lot more organized while he himself was more of a worker, and Mr. Chamberlain agreed as well. I was called aside around mid-September, and both asked me if I would like to take Reece’s spot as manager. I was of course warned about all the responsibilities I will have, in which I honorably accepted. I became the head manager, with Reece and Andres Martinez as my assistant managers.&lt;br /&gt;
&lt;br /&gt;
As a manager, I improved our procedures and really organized 24PinTech’s infrastructure. In my opinion, 24PinTech at the beginning of the school year really needed more “balance” in addition to more procedures and organization- that was my goal. I made sure procedures were being followed in addition to assigning work orders and conducting meetings. I also did loads of documentation throughout the school year that future and employees and managers can make reference to and hopefully improve.&lt;br /&gt;
&lt;br /&gt;
Being able to contribute as a manager of 24PinTech meant a lot to me, especially as a new member of the 24PinTech team. What was the most meaningful to me was that I was useful for once, and that I was able to develop myself as a leader.&lt;br /&gt;
&lt;br /&gt;
==My Accomplishments==&lt;br /&gt;
Although I didn't accomplish much as far as work orders go, I do think accomplished great things as 24PinTech's manager. I think I did a great job documenting and taking note of everything I've encountered in the business. One thing that the employees might not know is that I frequently envision 24PinTech's future. As such, I frequently update our email templates, inventory, and procedures. My documentation is quite extensive in terms of the business itself and how it functions. Organization, in my opinion, is a huge improvement to 24PinTech in which I am glad to have influenced.&lt;br /&gt;
&lt;br /&gt;
==What I Learned==&lt;br /&gt;
In general, I learned how to be a leader. Being an introvert in the first place, is quite challenging. However through 24PinTech, i gained more leadership skills and developed better communication skills. I also think that the business really opened my eyes to what I should expect in my future career. This business is a simulation and the real thing at the same time, and I'm glad that I learned everything I need to know in order to be a good employee. Being a manager really made me think. It's not at all an easy job, as my fellow employees might think. I learned how to manage in general which is something that I wasn't the best at in the past. it's stressful Overall, I learned what a business is all about. It's more than just business. I learned from Mr. Chamberlain that a business is all about the mission in which the employees must aim to accomplish. Although I am more independent than others, I learned how to work a team - I learned how to ask for help when I needed it, and I learned how to understand my fellow employees' strengths and weaknesses.&lt;br /&gt;
&lt;br /&gt;
==Improvements as an Employee and Manager==&lt;br /&gt;
I feel like I was a bit too nice of a manager. I think I went a bit too easy on employees, and I feel like I could have disciplined them a little more. Although we got work orders done, I do feel like we got distracted every now and then. I put the blame on myself for not taking action like I was supposed to. I do feel like we could have gotten more work done. &lt;br /&gt;
&lt;br /&gt;
==Conclusion==&lt;br /&gt;
I hope that future employees such as I find ways to contribute to the business in their own way. 24PinTech is still at its early stages, and I’m glad I got to be a part of the best team that made the most impact on the business. This business is still growing, and although I made some contributions to the business, I expect future managers and employees to do even more. I envision expansion. I’m glad the business really prepared me for the real world, as it served a simulation of an IT business. I do think I more prepared for the future because of 24PinTech&lt;/div&gt;</summary>
		<author><name>Tgriego</name></author>
	</entry>
</feed>